diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3360be4aa23d40747c6ee4350b3c91f1a03e91ca..3f5c522c952f75b4922f438fecf04f69d9c4a10c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,11 +1,8 @@
-cmake_minimum_required(VERSION 3.5)
+cmake_minimum_required(VERSION 3.0.2)
 project(multi_cell_builder)
 # C++ 11
 add_compile_options(-std=c++17)
 
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_CXX_STANDARD_REQUIRED ON)
-
 # Load catkin and all dependencies required for this package
 find_package(catkin REQUIRED COMPONENTS
   moveit_task_constructor_core
@@ -27,11 +24,9 @@ find_package(catkin REQUIRED COMPONENTS
   tf_conversions
   trajectory_msgs
   pcl_ros
-  actionlib_msgs
 
   gb_grasp
   moveit_grasps
-  behaviortree_cpp_v3
 )
 
 find_package(yaml-cpp REQUIRED)
@@ -88,11 +83,7 @@ src/reader/wing_reader.cpp
 src/reader/cuboid_reader.cpp
 src/reader/job_reader.cpp
 
-src/bt/trajetory.cpp
-src/bt/planning_scene.cpp
-src/bt/execution.cpp
-src/bt/position_condition.cpp
-src/bt/parallel_robot.cpp
+
 
 
 )
@@ -115,13 +106,6 @@ src/reader/wing_reader.cpp
 src/reader/cuboid_reader.cpp
 src/reader/job_reader.cpp
 
-src/bt/trajetory.cpp
-src/bt/planning_scene.cpp
-src/bt/execution.cpp
-src/bt/position_condition.cpp
-src/bt/parallel_robot.cpp
-
-
 )
 
 add_executable(grasp_cell_routine src/grasp_cell_routine.cpp
@@ -142,13 +126,35 @@ src/reader/robot_reader.cpp
 src/reader/wing_reader.cpp
 src/reader/cuboid_reader.cpp
 src/reader/job_reader.cpp
+)
+
+add_executable(robot_base_calculation_approach src/robot_base_calculation_approach.cpp
+src/robot/abstract_robot.cpp
+src/robot/ceti_robot.cpp
+src/robot/decorators/panda_decorator.cpp
+
+src/base_bridge/simple_base_implementation.cpp
+src/base_bridge/simple_base.cpp
 
+src/robot_element/decorators/log_decorator.cpp
 
-src/bt/trajetory.cpp
-src/bt/planning_scene.cpp
-src/bt/execution.cpp
-src/bt/position_condition.cpp
-src/bt/parallel_robot.cpp
+src/robot_element/observers/panel.cpp
+src/robot_element/observers/rviz_panel.cpp
+src/robot_element/observers/moveit_panel.cpp
+src/robot_element/observers/field.cpp
+
+
+src/mediator/abstract_mediator.cpp
+src/mediator/base_calculation_mediator.cpp
+
+src/reader/abstract_param_reader.cpp
+src/reader/robot_reader.cpp
+src/reader/wing_reader.cpp
+src/reader/cuboid_reader.cpp
+src/reader/job_reader.cpp
+src/reader/task_space_reader.cpp
+src/reader/map_reader.cpp
+src/reader/ts_reader.cpp
 
 
 )
@@ -159,7 +165,6 @@ src/reader/abstract_param_reader.cpp
 src/reader/task_space_reader.cpp
 src/reader/robot_reader.cpp
 src/reader/job_reader.cpp
-
 )
 
 
@@ -167,24 +172,30 @@ add_dependencies(base_routine ${base_routine_EXPORTED_TARGETS} ${catkin_EXPORTED
 add_dependencies(cell_routine ${cell_routine_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
 add_dependencies(mtc2taskspace ${mtc2taskspace_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
 add_dependencies(grasp_cell_routine ${grasp_cell_routine_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
+add_dependencies(robot_base_calculation_approach ${robot_base_calculation_approach_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
+
 
+target_link_libraries(robot_base_calculation_approach 
+  ${catkin_LIBRARIES}
+  ${OCTOMAP_LIBRARIES}
+  ${PCL_LIBRARY_DIRS}
+  yaml-cpp
+)
 
 target_link_libraries(base_routine 
   ${catkin_LIBRARIES}
   ${OCTOMAP_LIBRARIES}
   ${PCL_LIBRARY_DIRS}
   ${moveit_grasps_LIBRARIES}
-  ${BEHAVIOR_TREE_LIBRARY}
   yaml-cpp
 )
+
 target_link_libraries(cell_routine 
   ${catkin_LIBRARIES}
   ${OCTOMAP_LIBRARIES}
   ${PCL_LIBRARY_DIRS}
   ${moveit_grasps_LIBRARIES}
-  ${BEHAVIOR_TREE_LIBRARY}
   yaml-cpp
-
 )
 
 target_link_libraries(grasp_cell_routine 
@@ -192,7 +203,6 @@ target_link_libraries(grasp_cell_routine
   ${OCTOMAP_LIBRARIES}
   ${PCL_LIBRARY_DIRS}
   ${moveit_grasps_LIBRARIES}
-  ${BEHAVIOR_TREE_LIBRARY}
   yaml-cpp
 )
 
diff --git a/doc/html/abstract__base_8h.html b/doc/html/abstract__base_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f5480f52bae6eb3f9d5bce6edad3362e4633af6
--- /dev/null
+++ b/doc/html/abstract__base_8h.html
@@ -0,0 +1,97 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_base.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_base.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;octomap/octomap.h&quot;</code><br />
+<code>#include &lt;pcl/point_cloud.h&gt;</code><br />
+<code>#include &lt;pcl/octree/octree.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base__implementation_8h_source.html">bridge/abstract_base_implementation.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_base.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__base_8h__incl.png" border="0" usemap="#abstract__base_8h" alt=""/></div>
+<map name="abstract__base_8h" id="abstract__base_8h">
+<area shape="rect" title=" " alt="" coords="993,5,1118,32"/>
+<area shape="rect" title=" " alt="" coords="196,259,275,285"/>
+<area shape="rect" title=" " alt="" coords="523,177,673,203"/>
+<area shape="rect" title=" " alt="" coords="685,259,884,285"/>
+<area shape="rect" title=" " alt="" coords="1486,87,1638,114"/>
+<area shape="rect" title=" " alt="" coords="1663,87,1795,114"/>
+<area shape="rect" title=" " alt="" coords="1819,87,1961,114"/>
+<area shape="rect" title=" " alt="" coords="697,177,811,203"/>
+<area shape="rect" title=" " alt="" coords="1204,177,1336,203"/>
+<area shape="rect" title=" " alt="" coords="1360,177,1433,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="970,80,1141,121"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="340,87,507,114"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="5,80,164,121"/>
+<area shape="rect" title=" " alt="" coords="1121,177,1179,203"/>
+<area shape="rect" title=" " alt="" coords="835,169,995,211"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="273,169,448,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__base_8h__dep__incl.png" border="0" usemap="#abstract__base_8hdep" alt=""/></div>
+<map name="abstract__base_8hdep" id="abstract__base_8hdep">
+<area shape="rect" title=" " alt="" coords="215,5,340,32"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="159,80,395,107"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="13,155,240,181"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="334,229,506,271"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="419,80,535,107"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="315,155,445,181"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="5,237,248,263"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__base_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html">Abstract_base</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base class.  <a href="classAbstract__base.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__base_8h__dep__incl.map b/doc/html/abstract__base_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6f2405f92280a58a9f294639e468f3f0b165fa21
--- /dev/null
+++ b/doc/html/abstract__base_8h__dep__incl.map
@@ -0,0 +1,9 @@
+<map id="abstract_base.h" name="abstract_base.h">
+<area shape="rect" id="node1" title=" " alt="" coords="215,5,340,32"/>
+<area shape="rect" id="node2" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="159,80,395,107"/>
+<area shape="rect" id="node3" href="$simple__base__implementation_8h.html" title=" " alt="" coords="13,155,240,181"/>
+<area shape="rect" id="node5" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="334,229,506,271"/>
+<area shape="rect" id="node7" href="$simple__base_8h.html" title=" " alt="" coords="419,80,535,107"/>
+<area shape="rect" id="node6" href="$simple__base_8cpp.html" title=" " alt="" coords="315,155,445,181"/>
+<area shape="rect" id="node4" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="5,237,248,263"/>
+</map>
diff --git a/doc/html/abstract__base_8h__dep__incl.md5 b/doc/html/abstract__base_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..cd18ba42ba6298078aea58f51fe54c3625774a87
--- /dev/null
+++ b/doc/html/abstract__base_8h__dep__incl.md5
@@ -0,0 +1 @@
+e0206e25f59b859daa368695bebe469a
\ No newline at end of file
diff --git a/doc/html/abstract__base_8h__dep__incl.png b/doc/html/abstract__base_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..908553b809167e1605535abae87a042ce2d1765e
Binary files /dev/null and b/doc/html/abstract__base_8h__dep__incl.png differ
diff --git a/doc/html/abstract__base_8h__incl.map b/doc/html/abstract__base_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..2a67eba7c8d859a3b0c79d92635b88bc8c3033ae
--- /dev/null
+++ b/doc/html/abstract__base_8h__incl.map
@@ -0,0 +1,18 @@
+<map id="abstract_base.h" name="abstract_base.h">
+<area shape="rect" id="node1" title=" " alt="" coords="993,5,1118,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="196,259,275,285"/>
+<area shape="rect" id="node3" title=" " alt="" coords="523,177,673,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="685,259,884,285"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1486,87,1638,114"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1663,87,1795,114"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1819,87,1961,114"/>
+<area shape="rect" id="node8" title=" " alt="" coords="697,177,811,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1204,177,1336,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1360,177,1433,203"/>
+<area shape="rect" id="node11" href="$abstract__param__reader_8h.html" title=" " alt="" coords="970,80,1141,121"/>
+<area shape="rect" id="node14" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="340,87,507,114"/>
+<area shape="rect" id="node16" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="5,80,164,121"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1121,177,1179,203"/>
+<area shape="rect" id="node13" title=" " alt="" coords="835,169,995,211"/>
+<area shape="rect" id="node15" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="273,169,448,211"/>
+</map>
diff --git a/doc/html/abstract__base_8h__incl.md5 b/doc/html/abstract__base_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1e0812c69f1785becca6b01fdba8f1cb3024fa0e
--- /dev/null
+++ b/doc/html/abstract__base_8h__incl.md5
@@ -0,0 +1 @@
+76bce0e6740a256c668e9ba17e4867a3
\ No newline at end of file
diff --git a/doc/html/abstract__base_8h__incl.png b/doc/html/abstract__base_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ddf4099677f0b053112762de58436973f46b0318
Binary files /dev/null and b/doc/html/abstract__base_8h__incl.png differ
diff --git a/doc/html/abstract__base_8h_source.html b/doc/html/abstract__base_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3bbad409fa15c09d26447c5e33a86f549bac1df8
--- /dev/null
+++ b/doc/html/abstract__base_8h_source.html
@@ -0,0 +1,145 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_base.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_base.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__base_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_BASE_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_BASE_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;octomap/octomap.h&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;pcl/octree/octree.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base__implementation_8h.html">bridge/abstract_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot.html">Abstract_robot</a>;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classAbstract__base.html">   29</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__base.html">Abstract_base</a>{</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">   31</a></span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; <a class="code" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a>; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">   33</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a>; </div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">   34</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a>; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">   35</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;std::pair&lt;object_data,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt; <a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a>; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">   36</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt; <a class="code" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a>; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">   38</a></span>&#160;    std::shared_ptr&lt;Abstract_base_implementation&gt; <a class="code" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a>; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">   45</a></span>&#160;    <a class="code" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a>(d){};</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">   51</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>* <a class="code" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">implementation</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a>.get();}</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">   57</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">set_implementation</a>(std::shared_ptr&lt;Abstract_base_implementation&gt; some_implememntation) {<a class="code" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a> = some_implememntation;}</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">   63</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">inv_map</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a>;}</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">   69</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">set_inv_map</a>(std::vector&lt;tf2::Transform&gt;&amp; list) {<a class="code" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a> = list;}</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">   75</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">map</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a>;}</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">   81</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">set_map</a>(std::vector&lt;tf2::Transform&gt;&amp; list) {<a class="code" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a> = list;}</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">   87</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;const std::string, std::vector&lt;std::pair&lt;object_data,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; <a class="code" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">task_space</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a>;}</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">   93</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">set_task_space</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; s_trans) {<a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a> = s_trans;}</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">  100</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;const std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt;&amp; <a class="code" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">target_cloud</a> () { <span class="keywordflow">return</span> <a class="code" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a>;}</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">  106</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">set_target_cloud</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt;&amp; cloud) {<a class="code" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a> = cloud;}</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="keyword">static</span> std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">create_pcl_box</a>();</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot)=0;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keyword">virtual</span> std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">base_calculation</a>()=0;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;};</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__base_html_a205a26b0fb0e75b2ea3a442cdc0926b2"><div class="ttname"><a href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">Abstract_base::base_calculation</a></div><div class="ttdeci">virtual std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation()=0</div><div class="ttdoc">pure virtual template methode</div></div>
+<div class="ttc" id="aclassAbstract__base_html_a54d21fd6fe1217c1b065c5b500e3e8d0"><div class="ttname"><a href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">Abstract_base::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">Ros nodehandle object.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00031">abstract_base.h:31</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a12b49689227a6dd6d0aa55fe273dfae2"><div class="ttname"><a href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">Abstract_base::set_inv_map</a></div><div class="ttdeci">void set_inv_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdoc">Set inverse map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00069">abstract_base.h:69</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ab7c57b1ac4fb42ab400c0fc08e9aff61"><div class="ttname"><a href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">Abstract_base::target_cloud</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp; target_cloud()</div><div class="ttdoc">Get task cloud.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00100">abstract_base.h:100</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a9fe29f317aeb7337c2eaeaefdc1d1ba9"><div class="ttname"><a href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">Abstract_base::implementation</a></div><div class="ttdeci">Abstract_base_implementation * implementation()</div><div class="ttdoc">Get used implementation.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00051">abstract_base.h:51</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a8c32441b38f2cb24388e8d98fd8fe2bc"><div class="ttname"><a href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">Abstract_base::task_space_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt; task_space_</div><div class="ttdoc">Drop-off locations with their grasp orientations, mapped to a robot.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00035">abstract_base.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a589f01126eab356919d97480e30b17ab"><div class="ttname"><a href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">Abstract_base::map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; map_</div><div class="ttdoc">Reachability map structure of a robot.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00033">abstract_base.h:33</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ad4b63750f9b890cf99f9187624cc97be"><div class="ttname"><a href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">Abstract_base::task_space</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt; &amp; task_space()</div><div class="ttdoc">Get task space.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00087">abstract_base.h:87</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_aebb83168a14d660a024240bfaad70a80"><div class="ttname"><a href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">Abstract_base::inv_map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; inv_map()</div><div class="ttdoc">Get inverse map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00063">abstract_base.h:63</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html"><div class="ttname"><a href="classAbstract__base.html">Abstract_base</a></div><div class="ttdoc">Abstract base class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00029">abstract_base.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a3fa949c8f9fd12d96add87d38810ceef"><div class="ttname"><a href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">Abstract_base::write_task</a></div><div class="ttdeci">virtual void write_task(Abstract_robot *robot)=0</div><div class="ttdoc">write trask</div></div>
+<div class="ttc" id="aclassAbstract__base_html_a4f721d18ef125fe286eeb7978fc499ba"><div class="ttname"><a href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">Abstract_base::create_pcl_box</a></div><div class="ttdeci">static std::vector&lt; pcl::PointXYZ &gt; create_pcl_box()</div><div class="ttdoc">box discretization</div></div>
+<div class="ttc" id="aclassAbstract__base_html_a20a272f916415c6d30d6c3af3eb75f33"><div class="ttname"><a href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">Abstract_base::target_cloud_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; target_cloud_</div><div class="ttdoc">Pointcloud structure, mapped to robot.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00036">abstract_base.h:36</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ac83e7d3257c5cadc3285a90801f7a479"><div class="ttname"><a href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">Abstract_base::set_map</a></div><div class="ttdeci">void set_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdoc">Set map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00081">abstract_base.h:81</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ae41eb0b9891cdcfca4ae7df8234a9113"><div class="ttname"><a href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">Abstract_base::set_implementation</a></div><div class="ttdeci">void set_implementation(std::shared_ptr&lt; Abstract_base_implementation &gt; some_implememntation)</div><div class="ttdoc">Set used implementation.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00057">abstract_base.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html"><div class="ttname"><a href="classAbstract__base__implementation.html">Abstract_base_implementation</a></div><div class="ttdoc">abstract base implementation</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base__implementation_8h_source.html#l00011">abstract_base_implementation.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a0a16c06aa3591c4daa7872dd0a1510d8"><div class="ttname"><a href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">Abstract_base::map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map()</div><div class="ttdoc">Get map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00075">abstract_base.h:75</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ae2031dc21ac6416978f9fe854449287e"><div class="ttname"><a href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">Abstract_base::set_task_space</a></div><div class="ttdeci">void set_task_space(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;s_trans)</div><div class="ttdoc">Set task space.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00093">abstract_base.h:93</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ab73fdbf60e0d79d8ba4eeca3a894e39e"><div class="ttname"><a href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">Abstract_base::implementation_</a></div><div class="ttdeci">std::shared_ptr&lt; Abstract_base_implementation &gt; implementation_</div><div class="ttdoc">refined implementation</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00038">abstract_base.h:38</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a9b80b83e10a75f0421594e46c9b49381"><div class="ttname"><a href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">Abstract_base::inv_map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; inv_map_</div><div class="ttdoc">Inversion of reachability map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00034">abstract_base.h:34</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a65784b6507975934712e2509e237680a"><div class="ttname"><a href="classAbstract__base.html#a65784b6507975934712e2509e237680a">Abstract_base::set_target_cloud</a></div><div class="ttdeci">void set_target_cloud(std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</div><div class="ttdoc">Set task cloud.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00106">abstract_base.h:106</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a68300edaeff45edafe777bc4f7be2433"><div class="ttname"><a href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base::Abstract_base</a></div><div class="ttdeci">Abstract_base(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Abstract base constructor.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00045">abstract_base.h:45</a></div></div>
+<div class="ttc" id="aabstract__base__implementation_8h_html"><div class="ttname"><a href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__base__implementation_8h.html b/doc/html/abstract__base__implementation_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..46ddea76537202274a2a6717385723c2e82a524b
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_base_implementation.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_base_implementation.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base_8h_source.html">bridge/abstract_base.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_base_implementation.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__base__implementation_8h__incl.png" border="0" usemap="#abstract__base__implementation_8h" alt=""/></div>
+<map name="abstract__base__implementation_8h" id="abstract__base__implementation_8h">
+<area shape="rect" title=" " alt="" coords="697,5,933,32"/>
+<area shape="rect" title=" " alt="" coords="933,333,1012,360"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="730,80,901,107"/>
+<area shape="rect" title=" " alt="" coords="330,251,479,278"/>
+<area shape="rect" title=" " alt="" coords="5,333,204,360"/>
+<area shape="rect" title=" " alt="" coords="795,162,947,189"/>
+<area shape="rect" title=" " alt="" coords="972,162,1104,189"/>
+<area shape="rect" title=" " alt="" coords="1128,162,1271,189"/>
+<area shape="rect" title=" " alt="" coords="504,251,617,278"/>
+<area shape="rect" title=" " alt="" coords="1011,251,1143,278"/>
+<area shape="rect" title=" " alt="" coords="1217,251,1291,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="550,155,721,196"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="161,162,328,189"/>
+<area shape="rect" title=" " alt="" coords="693,251,751,278"/>
+<area shape="rect" title=" " alt="" coords="775,244,935,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="80,244,255,285"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__base__implementation_8h__dep__incl.png" border="0" usemap="#abstract__base__implementation_8hdep" alt=""/></div>
+<map name="abstract__base__implementation_8hdep" id="abstract__base__implementation_8hdep">
+<area shape="rect" title=" " alt="" coords="87,5,323,32"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="143,80,268,107"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="5,237,136,263"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="169,229,341,271"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="343,155,569,181"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="101,155,217,181"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="365,237,608,263"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__base__implementation_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">abstract base implementation  <a href="classAbstract__base__implementation.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__base__implementation_8h__dep__incl.map b/doc/html/abstract__base__implementation_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..70b216963c17f10490883a8dd2c6f4b00fbf8511
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h__dep__incl.map
@@ -0,0 +1,9 @@
+<map id="abstract_base_implementation.h" name="abstract_base_implementation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="87,5,323,32"/>
+<area shape="rect" id="node2" href="$abstract__base_8h.html" title=" " alt="" coords="143,80,268,107"/>
+<area shape="rect" id="node4" href="$simple__base_8cpp.html" title=" " alt="" coords="5,237,136,263"/>
+<area shape="rect" id="node5" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="169,229,341,271"/>
+<area shape="rect" id="node6" href="$simple__base__implementation_8h.html" title=" " alt="" coords="343,155,569,181"/>
+<area shape="rect" id="node3" href="$simple__base_8h.html" title=" " alt="" coords="101,155,217,181"/>
+<area shape="rect" id="node7" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="365,237,608,263"/>
+</map>
diff --git a/doc/html/abstract__base__implementation_8h__dep__incl.md5 b/doc/html/abstract__base__implementation_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..be1daa113cbfb3eccd23dc746d17a622b45d0641
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h__dep__incl.md5
@@ -0,0 +1 @@
+0d25001990e1050e9562e394df89d241
\ No newline at end of file
diff --git a/doc/html/abstract__base__implementation_8h__dep__incl.png b/doc/html/abstract__base__implementation_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..307b725acafab99c314cb803485e872de3ea976e
Binary files /dev/null and b/doc/html/abstract__base__implementation_8h__dep__incl.png differ
diff --git a/doc/html/abstract__base__implementation_8h__incl.map b/doc/html/abstract__base__implementation_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6e2cef6fa37c1f082495e44eeccd3804d5ba98ff
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h__incl.map
@@ -0,0 +1,18 @@
+<map id="abstract_base_implementation.h" name="abstract_base_implementation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="697,5,933,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="933,333,1012,360"/>
+<area shape="rect" id="node3" href="$abstract__base_8h.html" title=" " alt="" coords="730,80,901,107"/>
+<area shape="rect" id="node4" title=" " alt="" coords="330,251,479,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="5,333,204,360"/>
+<area shape="rect" id="node6" title=" " alt="" coords="795,162,947,189"/>
+<area shape="rect" id="node7" title=" " alt="" coords="972,162,1104,189"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1128,162,1271,189"/>
+<area shape="rect" id="node9" title=" " alt="" coords="504,251,617,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1011,251,1143,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1217,251,1291,278"/>
+<area shape="rect" id="node12" href="$abstract__param__reader_8h.html" title=" " alt="" coords="550,155,721,196"/>
+<area shape="rect" id="node15" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="161,162,328,189"/>
+<area shape="rect" id="node13" title=" " alt="" coords="693,251,751,278"/>
+<area shape="rect" id="node14" title=" " alt="" coords="775,244,935,285"/>
+<area shape="rect" id="node16" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="80,244,255,285"/>
+</map>
diff --git a/doc/html/abstract__base__implementation_8h__incl.md5 b/doc/html/abstract__base__implementation_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b5006353e71411b9e9341cf73e2fc6aaad314bfe
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h__incl.md5
@@ -0,0 +1 @@
+7baa80f5351491861e82622b8729629f
\ No newline at end of file
diff --git a/doc/html/abstract__base__implementation_8h__incl.png b/doc/html/abstract__base__implementation_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..02e0b9cdcbf2d77ad60fdb4a10da09f2afafd273
Binary files /dev/null and b/doc/html/abstract__base__implementation_8h__incl.png differ
diff --git a/doc/html/abstract__base__implementation_8h_source.html b/doc/html/abstract__base__implementation_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..e90e7c06f948db7f144c26b15ba56437c6af5d4a
--- /dev/null
+++ b/doc/html/abstract__base__implementation_8h_source.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_base_implementation.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_base_implementation.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__base__implementation_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_BASE_IMPLEMENTATION_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_BASE_IMPLEMENTATION_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base_8h.html">bridge/abstract_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classAbstract__base__implementation.html">   11</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> {</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <a class="code" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">~Abstract_base_implementation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">set_grasp_orientations</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>, std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; var)=0;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">inv_map_creation</a>(std::vector&lt;tf2::Transform&gt;&amp; map, std::vector&lt;tf2::Transform&gt;&amp; inv_map, std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; task_space)=0;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="comment">//  pure virtual methode to calculate pcl clouds</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">//</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="comment">// Manipulates the vector of pcl::cloud of a graspable object</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="comment">// param var caller reference to manipulate member</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="comment">//virtual void cloud_calculation(Abstract_base* var)=0;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;};</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__base__implementation_html_a33d38400729ffe7b9e60cca9c3ddc12f"><div class="ttname"><a href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">Abstract_base_implementation::inv_map_creation</a></div><div class="ttdeci">virtual void inv_map_creation(std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space)=0</div><div class="ttdoc">pure virtual methode to create inverse map</div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html_a4c2ee065ff500f9d588ab967d55d3677"><div class="ttname"><a href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">Abstract_base_implementation::set_grasp_orientations</a></div><div class="ttdeci">virtual void set_grasp_orientations(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var)=0</div><div class="ttdoc">pure virtual methode to set grasp orientations</div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html_a7e51334938ee2afa88fe37b6e9b75690"><div class="ttname"><a href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">Abstract_base_implementation::~Abstract_base_implementation</a></div><div class="ttdeci">~Abstract_base_implementation()=default</div><div class="ttdoc">Abstract base implementation default destructor.</div></div>
+<div class="ttc" id="aabstract__base_8h_html"><div class="ttname"><a href="abstract__base_8h.html">abstract_base.h</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html_aefda2aa1684b1d8f5db48e999db2e05b"><div class="ttname"><a href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation::Abstract_base_implementation</a></div><div class="ttdeci">Abstract_base_implementation()=default</div><div class="ttdoc">Abstract base implementation default constructor.</div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html"><div class="ttname"><a href="classAbstract__base__implementation.html">Abstract_base_implementation</a></div><div class="ttdoc">abstract base implementation</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base__implementation_8h_source.html#l00011">abstract_base_implementation.h:11</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__map__loader_8h.html b/doc/html/abstract__map__loader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9713e040edbb3029fe9071795d26e5bab5d6cf8
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h.html
@@ -0,0 +1,107 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_map_loader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_map_loader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;octomap/octomap.h&quot;</code><br />
+<code>#include &lt;pcl/point_cloud.h&gt;</code><br />
+<code>#include &lt;pcl/octree/octree.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__strategy_8h_source.html">impl/abstract_strategy.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_map_loader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__map__loader_8h__incl.png" border="0" usemap="#abstract__map__loader_8h" alt=""/></div>
+<map name="abstract__map__loader_8h" id="abstract__map__loader_8h">
+<area shape="rect" title=" " alt="" coords="606,5,777,32"/>
+<area shape="rect" title=" " alt="" coords="108,251,187,278"/>
+<area shape="rect" title=" " alt="" coords="530,80,680,107"/>
+<area shape="rect" title=" " alt="" coords="391,251,590,278"/>
+<area shape="rect" title=" " alt="" coords="704,80,856,107"/>
+<area shape="rect" title=" " alt="" coords="880,80,1012,107"/>
+<area shape="rect" title=" " alt="" coords="1036,80,1179,107"/>
+<area shape="rect" title=" " alt="" coords="1203,80,1316,107"/>
+<area shape="rect" title=" " alt="" coords="1340,80,1472,107"/>
+<area shape="rect" title=" " alt="" coords="1496,80,1570,107"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="272,80,434,107"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="25,162,204,189"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="278,155,428,196"/>
+<area shape="rect" title=" " alt="" coords="220,244,366,285"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__map__loader_8h__dep__incl.png" border="0" usemap="#abstract__map__loader_8hdep" alt=""/></div>
+<map name="abstract__map__loader_8hdep" id="abstract__map__loader_8hdep">
+<area shape="rect" title=" " alt="" coords="1085,5,1255,32"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="1042,80,1189,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="1110,453,1243,480"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="593,528,761,555"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="277,453,402,480"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="1263,155,1410,181"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="1315,379,1425,405"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="799,155,927,181"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="663,304,816,331"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="893,379,986,405"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="13,453,202,480"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="378,379,525,405"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="652,229,720,256"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="650,379,818,405"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="885,453,993,480"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="5,528,209,555"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="427,453,588,480"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="308,304,429,331"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="555,304,638,331"/>
+<area shape="rect" href="base__by__rotation_8cpp.html" title=" " alt="" coords="1315,229,1476,256"/>
+<area shape="rect" href="map__loader_8cpp.html" title=" " alt="" coords="1319,453,1445,480"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__map__loader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__map__loader_8h__dep__incl.map b/doc/html/abstract__map__loader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d5ee45ec7735d4a76d31e7eac04e693be6d02aec
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h__dep__incl.map
@@ -0,0 +1,23 @@
+<map id="abstract_map_loader.h" name="abstract_map_loader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="1085,5,1255,32"/>
+<area shape="rect" id="node2" href="$abstract__strategy_8h.html" title=" " alt="" coords="1042,80,1189,107"/>
+<area shape="rect" id="node6" href="$base__routine_8cpp.html" title=" " alt="" coords="1110,453,1243,480"/>
+<area shape="rect" id="node9" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="593,528,761,555"/>
+<area shape="rect" id="node12" href="$cell__routine_8cpp.html" title=" " alt="" coords="277,453,402,480"/>
+<area shape="rect" id="node18" href="$base__by__rotation_8h.html" title=" " alt="" coords="1263,155,1410,181"/>
+<area shape="rect" id="node20" href="$map__loader_8h.html" title=" " alt="" coords="1315,379,1425,405"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="799,155,927,181"/>
+<area shape="rect" id="node4" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="663,304,816,331"/>
+<area shape="rect" id="node5" href="$mediator_8h.html" title=" " alt="" coords="893,379,986,405"/>
+<area shape="rect" id="node8" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="13,453,202,480"/>
+<area shape="rect" id="node11" href="$moveit__mediator_8h.html" title=" " alt="" coords="378,379,525,405"/>
+<area shape="rect" id="node15" href="$robot_8h.html" title=" " alt="" coords="652,229,720,256"/>
+<area shape="rect" id="node14" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="650,379,818,405"/>
+<area shape="rect" id="node7" href="$mediator_8cpp.html" title=" " alt="" coords="885,453,993,480"/>
+<area shape="rect" id="node10" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="5,528,209,555"/>
+<area shape="rect" id="node13" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="427,453,588,480"/>
+<area shape="rect" id="node16" href="$moveit__robot_8h.html" title=" " alt="" coords="308,304,429,331"/>
+<area shape="rect" id="node17" href="$robot_8cpp.html" title=" " alt="" coords="555,304,638,331"/>
+<area shape="rect" id="node19" href="$base__by__rotation_8cpp.html" title=" " alt="" coords="1315,229,1476,256"/>
+<area shape="rect" id="node21" href="$map__loader_8cpp.html" title=" " alt="" coords="1319,453,1445,480"/>
+</map>
diff --git a/doc/html/abstract__map__loader_8h__dep__incl.md5 b/doc/html/abstract__map__loader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1568d8a7b456afe50ed8ee120b1f72a8dd56b811
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h__dep__incl.md5
@@ -0,0 +1 @@
+4619fa53bc01d859796ac3d99bac5e20
\ No newline at end of file
diff --git a/doc/html/abstract__map__loader_8h__dep__incl.png b/doc/html/abstract__map__loader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b81c6157c43ef6960fcd342cab5128f2bf2152b7
Binary files /dev/null and b/doc/html/abstract__map__loader_8h__dep__incl.png differ
diff --git a/doc/html/abstract__map__loader_8h__incl.map b/doc/html/abstract__map__loader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..c6dc25facdac37247b6eb804aaa2330d5fb1d764
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h__incl.map
@@ -0,0 +1,16 @@
+<map id="abstract_map_loader.h" name="abstract_map_loader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="606,5,777,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="108,251,187,278"/>
+<area shape="rect" id="node3" title=" " alt="" coords="530,80,680,107"/>
+<area shape="rect" id="node4" title=" " alt="" coords="391,251,590,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="704,80,856,107"/>
+<area shape="rect" id="node6" title=" " alt="" coords="880,80,1012,107"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1036,80,1179,107"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1203,80,1316,107"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1340,80,1472,107"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1496,80,1570,107"/>
+<area shape="rect" id="node11" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="272,80,434,107"/>
+<area shape="rect" id="node12" href="$abstract__strategy_8h.html" title=" " alt="" coords="25,162,204,189"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="278,155,428,196"/>
+<area shape="rect" id="node14" title=" " alt="" coords="220,244,366,285"/>
+</map>
diff --git a/doc/html/abstract__map__loader_8h__incl.md5 b/doc/html/abstract__map__loader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d36df12edfe890d8afdf4f576e591934d8a4b519
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h__incl.md5
@@ -0,0 +1 @@
+3f193ba157134331fb63e3196e29a5bb
\ No newline at end of file
diff --git a/doc/html/abstract__map__loader_8h__incl.png b/doc/html/abstract__map__loader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1b77df5362c7c6bd56c6c7028cc3c68c1f0d3f89
Binary files /dev/null and b/doc/html/abstract__map__loader_8h__incl.png differ
diff --git a/doc/html/abstract__map__loader_8h_source.html b/doc/html/abstract__map__loader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6678b91cb196ebea60aaf9ead014c557af0bb1f0
--- /dev/null
+++ b/doc/html/abstract__map__loader_8h_source.html
@@ -0,0 +1,121 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_map_loader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_map_loader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__map__loader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_MAP_LOADER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_MAP_LOADER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;octomap/octomap.h&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;pcl/octree/octree.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__strategy_8h.html">impl/abstract_strategy.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__strategy.html">Abstract_strategy</a>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot.html">Abstract_robot</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html">   24</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>{</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">   26</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">   27</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">   28</a></span>&#160;    std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">   29</a></span>&#160;    std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt;&gt;&gt; <a class="code" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">   30</a></span>&#160;    std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt; <a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a>;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">   32</a></span>&#160;    <a class="code" href="classAbstract__strategy.html">Abstract_strategy</a> *<a class="code" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a>; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">~Abstract_map_loader</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">   38</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a>(<a class="code" href="classAbstract__strategy.html">Abstract_strategy</a>* some_stratergy) {<a class="code" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a> = some_stratergy;}</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">   39</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classAbstract__strategy.html">Abstract_strategy</a>* <a class="code" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">strategy</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a>;}</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">   41</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a>;}</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">   42</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a>;}</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">   43</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a>(std::vector&lt;tf2::Transform&gt;&amp; list) {<a class="code" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a> = list;}</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">   44</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a>(std::vector&lt;tf2::Transform&gt;&amp; list) {<a class="code" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a> = list;}</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">   45</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt;&amp; lists_in_list) {<a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a> = lists_in_list;}</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">   46</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt;&amp; <a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>;}</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">   47</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&amp; <a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a>;}</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">   48</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">set_target_rot</a> (std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&amp; rots) {<a class="code" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a> = rots;}</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">   49</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a>(std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt;&amp; cloud) {<a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a> = cloud;}</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">   50</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt;&amp; <a class="code" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">target_cloud</a> () { <span class="keywordflow">return</span> <a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a>;}</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keyword">static</span> std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a>();</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot)=0;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keyword">virtual</span> std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">base_calculation</a>()=0;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;};</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__map__loader_html_a460481a298b27e411bafcdc584f1f35a"><div class="ttname"><a href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">Abstract_map_loader::map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; map_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00027">abstract_map_loader.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a8c4bd31f9c778a3a5ef7a21ab16f6127"><div class="ttname"><a href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">Abstract_map_loader::task_grasps_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; task_grasps_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00028">abstract_map_loader.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a297e8f8fa66f70678d19d321033eea4d"><div class="ttname"><a href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">Abstract_map_loader::set_inv_map</a></div><div class="ttdeci">void set_inv_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00043">abstract_map_loader.h:43</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_abb73acebcfbfb3a5acb790eb2d96fbd6"><div class="ttname"><a href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">Abstract_map_loader::target_cloud</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp; target_cloud()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00050">abstract_map_loader.h:50</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aab0898959888bc50f37690808f9571a8"><div class="ttname"><a href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">Abstract_map_loader::target_cloud_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; target_cloud_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00030">abstract_map_loader.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_af4f75fbdda254f2a506770969cc46d8e"><div class="ttname"><a href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">Abstract_map_loader::inv_map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; inv_map()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00041">abstract_map_loader.h:41</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_ad43b3e44a4908e0352c3a7c7b26c8347"><div class="ttname"><a href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">Abstract_map_loader::inv_map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; inv_map_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00026">abstract_map_loader.h:26</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_acb51b1dd09b8689778de1a0b593d3a1f"><div class="ttname"><a href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">Abstract_map_loader::write_task</a></div><div class="ttdeci">virtual void write_task(Abstract_robot *robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a797587fa281f28fde814a052396d90bf"><div class="ttname"><a href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">Abstract_map_loader::create_pcl_box</a></div><div class="ttdeci">static std::vector&lt; pcl::PointXYZ &gt; create_pcl_box()</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00116">map_loader.cpp:116</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_ab738d6d84071f7b931e2373a7fefc498"><div class="ttname"><a href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">Abstract_map_loader::set_task_grasps</a></div><div class="ttdeci">void set_task_grasps(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00045">abstract_map_loader.h:45</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_af012c7a4a222097864cbcda7ed58212f"><div class="ttname"><a href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">Abstract_map_loader::target_rot_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; target_rot_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00029">abstract_map_loader.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a9fdca9d4a86d66a712194e409d799eff"><div class="ttname"><a href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">Abstract_map_loader::base_calculation</a></div><div class="ttdeci">virtual std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation()=0</div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a13fb2cd6ac1a353192161e053426d7c8"><div class="ttname"><a href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">Abstract_map_loader::map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00042">abstract_map_loader.h:42</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a2945aff76228233abb3a89477c013d8a"><div class="ttname"><a href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">Abstract_map_loader::set_target_cloud</a></div><div class="ttdeci">void set_target_cloud(std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00049">abstract_map_loader.h:49</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aa9772fe2bd594967b8f7b980db442ca5"><div class="ttname"><a href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader::task_grasps</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp; task_grasps()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00046">abstract_map_loader.h:46</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a408d265bc42bdbb25b2db44b9533e668"><div class="ttname"><a href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader::Abstract_map_loader</a></div><div class="ttdeci">Abstract_map_loader()=default</div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a3508478d51dcdf86ed8418006a4dd0d9"><div class="ttname"><a href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">Abstract_map_loader::set_strategy</a></div><div class="ttdeci">void set_strategy(Abstract_strategy *some_stratergy)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00038">abstract_map_loader.h:38</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a3b3675673d54d23b1678bd47df4b2273"><div class="ttname"><a href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">Abstract_map_loader::~Abstract_map_loader</a></div><div class="ttdeci">~Abstract_map_loader()=default</div></div>
+<div class="ttc" id="aclassAbstract__strategy_html"><div class="ttname"><a href="classAbstract__strategy.html">Abstract_strategy</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__strategy_8h_source.html#l00008">abstract_strategy.h:8</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a1edc00738184b6aa4b245727c8ed52ec"><div class="ttname"><a href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">Abstract_map_loader::set_map</a></div><div class="ttdeci">void set_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00044">abstract_map_loader.h:44</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_afd6b5c362ad38cfe32600ff9f1398bc7"><div class="ttname"><a href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">Abstract_map_loader::strategy</a></div><div class="ttdeci">Abstract_strategy * strategy()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00039">abstract_map_loader.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a18cb3dcb65ee0af86bff355c24814dc3"><div class="ttname"><a href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">Abstract_map_loader::strategy_</a></div><div class="ttdeci">Abstract_strategy * strategy_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00032">abstract_map_loader.h:32</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a2adcb4394435282441360fb2310c231b"><div class="ttname"><a href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">Abstract_map_loader::set_target_rot</a></div><div class="ttdeci">void set_target_rot(std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;rots)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00048">abstract_map_loader.h:48</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_abdd0484ea0507910d37b0eae257b6476"><div class="ttname"><a href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">Abstract_map_loader::target_rot</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &amp; target_rot()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00047">abstract_map_loader.h:47</a></div></div>
+<div class="ttc" id="aabstract__strategy_8h_html"><div class="ttname"><a href="abstract__strategy_8h.html">abstract_strategy.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__param__reader_8cpp.html b/doc/html/abstract__param__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ab8a0fbc25c01ce9d48fb38d5ed52c7b3de9627
--- /dev/null
+++ b/doc/html/abstract__param__reader_8cpp.html
@@ -0,0 +1,57 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_param_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_param_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_param_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__param__reader_8cpp__incl.png" border="0" usemap="#abstract__param__reader_8cpp" alt=""/></div>
+<map name="abstract__param__reader_8cpp" id="abstract__param__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="514,5,714,32"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="529,80,699,121"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" title=" " alt="" coords="420,177,619,203"/>
+<area shape="rect" title=" " alt="" coords="643,177,775,203"/>
+<area shape="rect" title=" " alt="" coords="799,177,872,203"/>
+<area shape="rect" title=" " alt="" coords="897,177,955,203"/>
+<area shape="rect" title=" " alt="" coords="979,169,1139,211"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__param__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__param__reader_8cpp__incl.map b/doc/html/abstract__param__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..929ed30064ad8613a5f42f464c7b5ec716bbb496
--- /dev/null
+++ b/doc/html/abstract__param__reader_8cpp__incl.map
@@ -0,0 +1,12 @@
+<map id="abstract_param_reader.cpp" name="abstract_param_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="514,5,714,32"/>
+<area shape="rect" id="node2" href="$abstract__param__reader_8h.html" title=" " alt="" coords="529,80,699,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node6" title=" " alt="" coords="420,177,619,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="643,177,775,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="799,177,872,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="897,177,955,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="979,169,1139,211"/>
+</map>
diff --git a/doc/html/abstract__param__reader_8cpp__incl.md5 b/doc/html/abstract__param__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c34542430ffd6c598a2ab48cc818667c2f013bb7
--- /dev/null
+++ b/doc/html/abstract__param__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+9f8449a286562e93ce694e62bd219959
\ No newline at end of file
diff --git a/doc/html/abstract__param__reader_8cpp__incl.png b/doc/html/abstract__param__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..bcb469d183a64f00ec2546277f531a992b6176e4
Binary files /dev/null and b/doc/html/abstract__param__reader_8cpp__incl.png differ
diff --git a/doc/html/abstract__param__reader_8cpp_source.html b/doc/html/abstract__param__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d576d2686d49f21ae606cd82b9967a3ba018cd29
--- /dev/null
+++ b/doc/html/abstract__param__reader_8cpp_source.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_param_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_param_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__param__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">    3</a></span>&#160;<span class="keywordtype">float</span> <a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a>(XmlRpc::XmlRpcValue&amp; val){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <span class="keywordtype">float</span> t = 0;</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;        <span class="keywordflow">switch</span> (val.getType()){</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;            <span class="keywordflow">case</span> XmlRpc::XmlRpcValue::TypeInt:</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;                t = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(val);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;            <span class="keywordflow">case</span> XmlRpc::XmlRpcValue::TypeDouble:</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                t = <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(val);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            <span class="keywordflow">case</span> XmlRpc::XmlRpcValue::TypeString:</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                t = std::stof(val);</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;value type is some unknown type&quot;</span>);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;            }</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    } <span class="keywordflow">catch</span> (XmlRpc::XmlRpcException){</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;Something went wrong, returning 0&quot;</span>);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    }</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <span class="keywordflow">return</span> t;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__param__reader_8h.html b/doc/html/abstract__param__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..b2d3447e431ba73aa44f9ab59a9e437531514ce4
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h.html
@@ -0,0 +1,122 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_param_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_param_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;yaml-cpp/node/detail/node_data.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_param_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__param__reader_8h__incl.png" border="0" usemap="#abstract__param__reader_8h" alt=""/></div>
+<map name="abstract__param__reader_8h" id="abstract__param__reader_8h">
+<area shape="rect" title=" " alt="" coords="521,5,707,32"/>
+<area shape="rect" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" title=" " alt="" coords="108,87,221,114"/>
+<area shape="rect" title=" " alt="" coords="246,87,395,114"/>
+<area shape="rect" title=" " alt="" coords="420,87,619,114"/>
+<area shape="rect" title=" " alt="" coords="643,87,775,114"/>
+<area shape="rect" title=" " alt="" coords="799,87,872,114"/>
+<area shape="rect" title=" " alt="" coords="897,87,955,114"/>
+<area shape="rect" title=" " alt="" coords="979,80,1139,121"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__param__reader_8h__dep__incl.png" border="0" usemap="#abstract__param__reader_8hdep" alt=""/></div>
+<map name="abstract__param__reader_8hdep" id="abstract__param__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="1967,5,2153,32"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="188,80,313,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="585,304,757,345"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="1576,311,1765,338"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="1956,393,2124,420"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="1454,155,1581,181"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="2099,311,2224,338"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="1841,155,1943,181"/>
+<area shape="rect" href="mtc2taskspace_8cpp.html" title=" " alt="" coords="3094,229,3242,256"/>
+<area shape="rect" href="map__reader_8h.html" title=" " alt="" coords="513,80,625,107"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="2520,155,2637,181"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="2835,311,2968,338"/>
+<area shape="rect" href="task__space__reader_8h.html" title=" " alt="" coords="3318,155,3474,181"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="795,80,890,107"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2003,80,2117,107"/>
+<area shape="rect" href="abstract__param__reader_8cpp.html" title=" " alt="" coords="3563,80,3763,107"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="55,155,291,181"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="13,229,240,256"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="366,155,482,181"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="365,229,496,256"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="5,311,248,338"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1569,393,1773,420"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1848,229,1995,256"/>
+<area shape="rect" href="cuboid__reader_8cpp.html" title=" " alt="" coords="1052,229,1193,256"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="1841,311,2002,338"/>
+<area shape="rect" href="job__reader_8cpp.html" title=" " alt="" coords="1370,229,1489,256"/>
+<area shape="rect" href="map__reader_8cpp.html" title=" " alt="" coords="506,155,633,181"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="1513,229,1722,256"/>
+<area shape="rect" href="robot__reader_8cpp.html" title=" " alt="" coords="2785,229,2917,256"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="1328,311,1552,338"/>
+<area shape="rect" href="task__space__reader_8cpp.html" title=" " alt="" coords="3317,229,3488,256"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="843,155,997,181"/>
+<area shape="rect" href="ts__reader_8cpp.html" title=" " alt="" coords="709,155,819,181"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="759,229,927,256"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="2281,155,2434,181"/>
+<area shape="rect" href="wing__reader_8cpp.html" title=" " alt="" coords="2127,155,2257,181"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="2616,229,2709,256"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="2221,229,2389,256"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="2609,311,2717,338"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__param__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract ROS-Param reader class.  <a href="classAbstract__param__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjob__data.html">job_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structobject__data.html">object_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__param__reader_8h__dep__incl.map b/doc/html/abstract__param__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..73cf3c65d6977603d49bb0a2aa37b47f09beefa6
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h__dep__incl.map
@@ -0,0 +1,41 @@
+<map id="abstract_param_reader.h" name="abstract_param_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="1967,5,2153,32"/>
+<area shape="rect" id="node2" href="$abstract__base_8h.html" title=" " alt="" coords="188,80,313,107"/>
+<area shape="rect" id="node6" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="585,304,757,345"/>
+<area shape="rect" id="node9" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="1576,311,1765,338"/>
+<area shape="rect" id="node10" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="1956,393,2124,420"/>
+<area shape="rect" id="node12" href="$cuboid__reader_8h.html" title=" " alt="" coords="1454,155,1581,181"/>
+<area shape="rect" id="node14" href="$cell__routine_8cpp.html" title=" " alt="" coords="2099,311,2224,338"/>
+<area shape="rect" id="node17" href="$job__reader_8h.html" title=" " alt="" coords="1841,155,1943,181"/>
+<area shape="rect" id="node18" href="$mtc2taskspace_8cpp.html" title=" " alt="" coords="3094,229,3242,256"/>
+<area shape="rect" id="node20" href="$map__reader_8h.html" title=" " alt="" coords="513,80,625,107"/>
+<area shape="rect" id="node22" href="$robot__reader_8h.html" title=" " alt="" coords="2520,155,2637,181"/>
+<area shape="rect" id="node25" href="$base__routine_8cpp.html" title=" " alt="" coords="2835,311,2968,338"/>
+<area shape="rect" id="node27" href="$task__space__reader_8h.html" title=" " alt="" coords="3318,155,3474,181"/>
+<area shape="rect" id="node29" href="$ts__reader_8h.html" title=" " alt="" coords="795,80,890,107"/>
+<area shape="rect" id="node33" href="$wing__reader_8h.html" title=" " alt="" coords="2003,80,2117,107"/>
+<area shape="rect" id="node39" href="$abstract__param__reader_8cpp.html" title=" " alt="" coords="3563,80,3763,107"/>
+<area shape="rect" id="node3" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="55,155,291,181"/>
+<area shape="rect" id="node4" href="$simple__base__implementation_8h.html" title=" " alt="" coords="13,229,240,256"/>
+<area shape="rect" id="node8" href="$simple__base_8h.html" title=" " alt="" coords="366,155,482,181"/>
+<area shape="rect" id="node7" href="$simple__base_8cpp.html" title=" " alt="" coords="365,229,496,256"/>
+<area shape="rect" id="node5" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="5,311,248,338"/>
+<area shape="rect" id="node11" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1569,393,1773,420"/>
+<area shape="rect" id="node13" href="$moveit__mediator_8h.html" title=" " alt="" coords="1848,229,1995,256"/>
+<area shape="rect" id="node16" href="$cuboid__reader_8cpp.html" title=" " alt="" coords="1052,229,1193,256"/>
+<area shape="rect" id="node15" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="1841,311,2002,338"/>
+<area shape="rect" id="node19" href="$job__reader_8cpp.html" title=" " alt="" coords="1370,229,1489,256"/>
+<area shape="rect" id="node21" href="$map__reader_8cpp.html" title=" " alt="" coords="506,155,633,181"/>
+<area shape="rect" id="node23" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="1513,229,1722,256"/>
+<area shape="rect" id="node26" href="$robot__reader_8cpp.html" title=" " alt="" coords="2785,229,2917,256"/>
+<area shape="rect" id="node24" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="1328,311,1552,338"/>
+<area shape="rect" id="node28" href="$task__space__reader_8cpp.html" title=" " alt="" coords="3317,229,3488,256"/>
+<area shape="rect" id="node30" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="843,155,997,181"/>
+<area shape="rect" id="node32" href="$ts__reader_8cpp.html" title=" " alt="" coords="709,155,819,181"/>
+<area shape="rect" id="node31" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="759,229,927,256"/>
+<area shape="rect" id="node34" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="2281,155,2434,181"/>
+<area shape="rect" id="node38" href="$wing__reader_8cpp.html" title=" " alt="" coords="2127,155,2257,181"/>
+<area shape="rect" id="node35" href="$mediator_8h.html" title=" " alt="" coords="2616,229,2709,256"/>
+<area shape="rect" id="node37" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="2221,229,2389,256"/>
+<area shape="rect" id="node36" href="$mediator_8cpp.html" title=" " alt="" coords="2609,311,2717,338"/>
+</map>
diff --git a/doc/html/abstract__param__reader_8h__dep__incl.md5 b/doc/html/abstract__param__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c1a113271b93c795372eb96d933bda988921bba8
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+c963860f445eb9ac10df9bc81efebc8b
\ No newline at end of file
diff --git a/doc/html/abstract__param__reader_8h__dep__incl.png b/doc/html/abstract__param__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..786835bcfe24fcad7a06f49bb74f0311444ca529
Binary files /dev/null and b/doc/html/abstract__param__reader_8h__dep__incl.png differ
diff --git a/doc/html/abstract__param__reader_8h__incl.map b/doc/html/abstract__param__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5a28b8e17ab5af06fb3370a721b57a32814b324c
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h__incl.map
@@ -0,0 +1,11 @@
+<map id="abstract_param_reader.h" name="abstract_param_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="521,5,707,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,87,221,114"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,87,395,114"/>
+<area shape="rect" id="node5" title=" " alt="" coords="420,87,619,114"/>
+<area shape="rect" id="node6" title=" " alt="" coords="643,87,775,114"/>
+<area shape="rect" id="node7" title=" " alt="" coords="799,87,872,114"/>
+<area shape="rect" id="node8" title=" " alt="" coords="897,87,955,114"/>
+<area shape="rect" id="node9" title=" " alt="" coords="979,80,1139,121"/>
+</map>
diff --git a/doc/html/abstract__param__reader_8h__incl.md5 b/doc/html/abstract__param__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a85632af95315f2f687b5caffb17cfc6db8a6666
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h__incl.md5
@@ -0,0 +1 @@
+1fc17d1de1bcb9b53e109aa9476c300e
\ No newline at end of file
diff --git a/doc/html/abstract__param__reader_8h__incl.png b/doc/html/abstract__param__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..5e469ce2e64a6810fe51d231c5d5bb806fe6299f
Binary files /dev/null and b/doc/html/abstract__param__reader_8h__incl.png differ
diff --git a/doc/html/abstract__param__reader_8h_source.html b/doc/html/abstract__param__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..19b6591887b1a17bdf7d290f03eaa87efdada3d2
--- /dev/null
+++ b/doc/html/abstract__param__reader_8h_source.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_param_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_param_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__param__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_PARAM_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_PARAM_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/node/detail/node_data.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="structobject__data.html">   13</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structobject__data.html">object_data</a> {</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">   14</a></span>&#160;    std::string <a class="code" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">name_</a>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">   15</a></span>&#160;    tf2::Transform <a class="code" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">pose_</a>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">   16</a></span>&#160;    tf2::Vector3 <a class="code" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">size_</a>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;};</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="structjob__data.html">   19</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structjob__data.html">job_data</a> {</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">   20</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">jobs_</a>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;};</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classAbstract__param__reader.html">   27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">   29</a></span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">   36</a></span>&#160;    <a class="code" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>(d){}</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue&amp; val);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">read</a>()=0;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;};</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="astructjob__data_html_a9995696b3e7a24afb51e67a3cc8616d0"><div class="ttname"><a href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">job_data::jobs_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; jobs_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00020">abstract_param_reader.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a734c0833347f6d686f280031b3219de0"><div class="ttname"><a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader::Abstract_param_reader</a></div><div class="ttdeci">Abstract_param_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Abstract param reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00036">abstract_param_reader.h:36</a></div></div>
+<div class="ttc" id="astructobject__data_html_a3f16f6c8bbaeeab8ad6d67a28bc8430d"><div class="ttname"><a href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">object_data::pose_</a></div><div class="ttdeci">tf2::Transform pose_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00015">abstract_param_reader.h:15</a></div></div>
+<div class="ttc" id="astructobject__data_html_a048099bcb764a005e050ef51bdb6b308"><div class="ttname"><a href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">object_data::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00014">abstract_param_reader.h:14</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="astructjob__data_html"><div class="ttname"><a href="structjob__data.html">job_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00019">abstract_param_reader.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a441ed47eee393cc772f19d4be923e34d"><div class="ttname"><a href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader::read</a></div><div class="ttdeci">virtual void read()=0</div><div class="ttdoc">pure virtual read methode</div></div>
+<div class="ttc" id="astructobject__data_html_a1470f3d835395fb7c192273559b8a258"><div class="ttname"><a href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">object_data::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00016">abstract_param_reader.h:16</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot_8cpp.html b/doc/html/abstract__robot_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..62aa4c1d93237415cfc91c714e706b061e51b04f
--- /dev/null
+++ b/doc/html/abstract__robot_8cpp.html
@@ -0,0 +1,52 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_robot.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_robot.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__robot_8cpp__incl.png" border="0" usemap="#abstract__robot_8cpp" alt=""/></div>
+<map name="abstract__robot_8cpp" id="abstract__robot_8cpp">
+<area shape="rect" title=" " alt="" coords="55,5,197,32"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="43,80,209,107"/>
+<area shape="rect" title=" " alt="" coords="5,244,84,271"/>
+<area shape="rect" title=" " alt="" coords="129,244,328,271"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="39,155,213,196"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__robot_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot_8cpp__incl.map b/doc/html/abstract__robot_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..45df946e146659f55970127f45482138aea2a059
--- /dev/null
+++ b/doc/html/abstract__robot_8cpp__incl.map
@@ -0,0 +1,7 @@
+<map id="abstract_robot.cpp" name="abstract_robot.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="55,5,197,32"/>
+<area shape="rect" id="node2" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="43,80,209,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,244,84,271"/>
+<area shape="rect" id="node4" title=" " alt="" coords="129,244,328,271"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="39,155,213,196"/>
+</map>
diff --git a/doc/html/abstract__robot_8cpp__incl.md5 b/doc/html/abstract__robot_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..12959fa09f0abd062728e07a66bf0138b2ac0bb2
--- /dev/null
+++ b/doc/html/abstract__robot_8cpp__incl.md5
@@ -0,0 +1 @@
+7361d469bd16706ac6a634a9cc601966
\ No newline at end of file
diff --git a/doc/html/abstract__robot_8cpp__incl.png b/doc/html/abstract__robot_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b9cd9d2f028babfda37b73646500cbb6630a3b59
Binary files /dev/null and b/doc/html/abstract__robot_8cpp__incl.png differ
diff --git a/doc/html/abstract__robot_8cpp_source.html b/doc/html/abstract__robot_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..642ad2a2202dc174752c978aae33198c05847b32
--- /dev/null
+++ b/doc/html/abstract__robot_8cpp_source.html
@@ -0,0 +1,72 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_robot.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__robot_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">    4</a></span>&#160;<a class="code" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot::Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size) </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;: name_(name)</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;, tf_(tf)</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;, size_(size){</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>= tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.22f, 0, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()));</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getX(), <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getY(), <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// ++</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getX(), <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getY(), <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// +-</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getX(), -<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getY(), <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">//-+</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getX(), -<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>.getY(), <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// --</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="comment">// root</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, 0.095f, 0))); <span class="comment">// ++</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, 0.095f, 0))); <span class="comment">// +-</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;}</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">   22</a></span>&#160;<span class="keywordtype">float</span> <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot::area_calculation</a>(tf2::Transform&amp; A, tf2::Transform&amp; B, tf2::Transform&amp; C){</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keywordflow">return</span> std::abs(</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                    (B.getOrigin().getX() * A.getOrigin().getY()) - (A.getOrigin().getX() * B.getOrigin().getY()) +</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                    (C.getOrigin().getX() * B.getOrigin().getY()) - (B.getOrigin().getX() * C.getOrigin().getY()) +</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                    (A.getOrigin().getX() * C.getOrigin().getY()) - (C.getOrigin().getX() * A.getOrigin().getY()))*0.5f;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a1402d06f3393679d585376716cc2a534"><div class="ttname"><a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot::area_calculation</a></div><div class="ttdeci">float area_calculation(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</div><div class="ttdoc">Triangle area calculator.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot_8cpp_source.html#l00022">abstract_robot.cpp:22</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a704bd9522c6fdaff61cc7584ef20850c"><div class="ttname"><a href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot::Abstract_robot</a></div><div class="ttdeci">Abstract_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00038">impl/abstract_robot.h:38</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot__decorator_8h.html b/doc/html/abstract__robot__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..afb55d8c8d9b0edcca9f1adc5b2a0357c306aae9
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h.html
@@ -0,0 +1,92 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li><li class="navelem"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_robot_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_pipeline/planning_pipeline.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+<code>#include &lt;moveit/kinematic_constraints/utils.h&gt;</code><br />
+<code>#include &lt;gb_grasp/MapGenerator.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_robot_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__robot__decorator_8h__incl.png" border="0" usemap="#abstract__robot__decorator_8h" alt=""/></div>
+<map name="abstract__robot__decorator_8h" id="abstract__robot__decorator_8h">
+<area shape="rect" title=" " alt="" coords="806,5,1003,32"/>
+<area shape="rect" title=" " alt="" coords="5,273,84,300"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="59,95,225,121"/>
+<area shape="rect" title=" " alt="" coords="250,87,437,129"/>
+<area shape="rect" title=" " alt="" coords="461,80,653,136"/>
+<area shape="rect" title=" " alt="" coords="677,87,895,129"/>
+<area shape="rect" title=" " alt="" coords="920,87,1127,129"/>
+<area shape="rect" title=" " alt="" coords="1151,80,1307,136"/>
+<area shape="rect" title=" " alt="" coords="1331,87,1505,129"/>
+<area shape="rect" title=" " alt="" coords="1529,87,1745,129"/>
+<area shape="rect" title=" " alt="" coords="1769,95,1960,121"/>
+<area shape="rect" title=" " alt="" coords="152,273,351,300"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,184,257,225"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__robot__decorator_8h__dep__incl.png" border="0" usemap="#abstract__robot__decorator_8hdep" alt=""/></div>
+<map name="abstract__robot__decorator_8hdep" id="abstract__robot__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="404,5,601,32"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="245,80,398,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="335,229,507,271"/>
+<area shape="rect" href="panda__decorator_8h.html" title=" " alt="" coords="541,80,683,107"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="13,155,222,181"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="297,155,465,181"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,237,229,263"/>
+<area shape="rect" href="panda__decorator_8cpp.html" title=" " alt="" coords="591,155,750,181"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__robot__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot__decorator_8h__dep__incl.map b/doc/html/abstract__robot__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..34df9531e6c761f6a8f51568dec58d7ca70de0ef
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h__dep__incl.map
@@ -0,0 +1,10 @@
+<map id="abstract_robot_decorator.h" name="abstract_robot_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="404,5,601,32"/>
+<area shape="rect" id="node2" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="245,80,398,107"/>
+<area shape="rect" id="node5" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="335,229,507,271"/>
+<area shape="rect" id="node7" href="$panda__decorator_8h.html" title=" " alt="" coords="541,80,683,107"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="13,155,222,181"/>
+<area shape="rect" id="node6" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="297,155,465,181"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,237,229,263"/>
+<area shape="rect" id="node8" href="$panda__decorator_8cpp.html" title=" " alt="" coords="591,155,750,181"/>
+</map>
diff --git a/doc/html/abstract__robot__decorator_8h__dep__incl.md5 b/doc/html/abstract__robot__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..6f0a86d6d99e8b06cc220a87e65d363c44a1b55f
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+44eb0c9ca72992511542e19f123f4655
\ No newline at end of file
diff --git a/doc/html/abstract__robot__decorator_8h__dep__incl.png b/doc/html/abstract__robot__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1eb26442ed5eb45bbbbcc530c6cf45743fff63c5
Binary files /dev/null and b/doc/html/abstract__robot__decorator_8h__dep__incl.png differ
diff --git a/doc/html/abstract__robot__decorator_8h__incl.map b/doc/html/abstract__robot__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..80c7b4f17c7ba412b8f48409c6b8e430c7fc8f3d
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h__incl.map
@@ -0,0 +1,15 @@
+<map id="abstract_robot_decorator.h" name="abstract_robot_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="806,5,1003,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,273,84,300"/>
+<area shape="rect" id="node3" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="59,95,225,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="250,87,437,129"/>
+<area shape="rect" id="node7" title=" " alt="" coords="461,80,653,136"/>
+<area shape="rect" id="node8" title=" " alt="" coords="677,87,895,129"/>
+<area shape="rect" id="node9" title=" " alt="" coords="920,87,1127,129"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1151,80,1307,136"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1331,87,1505,129"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1529,87,1745,129"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1769,95,1960,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="152,273,351,300"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,184,257,225"/>
+</map>
diff --git a/doc/html/abstract__robot__decorator_8h__incl.md5 b/doc/html/abstract__robot__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..137819313c501ca6493ae6fe03762c83c4d47cca
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h__incl.md5
@@ -0,0 +1 @@
+b5c6e8b9ed05bd0ef97a1ef4fe159213
\ No newline at end of file
diff --git a/doc/html/abstract__robot__decorator_8h__incl.png b/doc/html/abstract__robot__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..82baabddaebbad1989a79eb1088f6a320502ec00
Binary files /dev/null and b/doc/html/abstract__robot__decorator_8h__incl.png differ
diff --git a/doc/html/abstract__robot__decorator_8h_source.html b/doc/html/abstract__robot__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..01ea4fcdffad697e483ba288ebe263959385aaca
--- /dev/null
+++ b/doc/html/abstract__robot__decorator_8h_source.html
@@ -0,0 +1,113 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li><li class="navelem"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_robot_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__robot__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_pipeline/planning_pipeline.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;moveit/kinematic_constraints/utils.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/MapGenerator.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html">   18</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot.html">Abstract_robot</a>{</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">   20</a></span>&#160;    std::unique_ptr&lt;Abstract_robot&gt; <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">   21</a></span>&#160;    std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">   22</a></span>&#160;    std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a>;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">   24</a></span>&#160;    std::map&lt;std::string, std::string&gt;  <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">   25</a></span>&#160;    std::shared_ptr&lt;MapGenerator&gt; <a class="code" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">grasp_map_generator_</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">   29</a></span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a>(std::unique_ptr&lt;Abstract_robot&gt; <a class="code" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>) </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    : <a class="code" href="classAbstract__robot.html">Abstract_robot</a>(<span class="stringliteral">&quot;blanc&quot;</span>, tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0))</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    , <a class="code" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a>(nullptr)</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    , <a class="code" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a>(nullptr)</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    , <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>(std::move(<a class="code" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>)){};</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">   35</a></span>&#160;    std::string&amp; <a class="code" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">name</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;name();}</div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">   36</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">tf</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;tf();}</div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">   37</a></span>&#160;    tf2::Vector3&amp; <a class="code" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">size</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;size();}</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">   38</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">root_tf</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;root_tf();}</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">   39</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;bounds();}</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">   40</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">robot_root_bounds</a>()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds();}</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">   41</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">notify</a>()<span class="keyword"> override </span>{<a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;notify();}</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">   42</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; b)<span class="keyword"> override </span>{<a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;check_single_object_collision(obj,b);}</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">   43</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj)<span class="keyword"> override </span>{<a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;workload_checker(count_vector, obj);}</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    </div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">   45</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classAbstract__robot.html">Abstract_robot</a>* <a class="code" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>(){<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>.get();}</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">spezifie_root_bounds</a>()=0;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">spezifie_robot_groups</a>()=0;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;};</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a9a1d6aa0f1bdeeabe95517b0408e0cf8"><div class="ttname"><a href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">Abstract_robot_decorator::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00041">abstract_robot_decorator.h:41</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a2a2ac64bad39febde6685135822c2597"><div class="ttname"><a href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">Abstract_robot_decorator::spezifie_root_bounds</a></div><div class="ttdeci">virtual void spezifie_root_bounds()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a586e264c1add89b1becf4e5d18964160"><div class="ttname"><a href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">Abstract_robot_decorator::mgi_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00021">abstract_robot_decorator.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a86429ab626717a96cd34de271bb75c5c"><div class="ttname"><a href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">Abstract_robot_decorator::map_</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; map_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00024">abstract_robot_decorator.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a9049f28e67b6457114a2b575587de4d4"><div class="ttname"><a href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator::Abstract_robot_decorator</a></div><div class="ttdeci">Abstract_robot_decorator(std::unique_ptr&lt; Abstract_robot &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00029">abstract_robot_decorator.h:29</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a889edd0d57abce0f6c2a6bc14bcbee6e"><div class="ttname"><a href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">Abstract_robot_decorator::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00039">abstract_robot_decorator.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a9bdb9eee650e25e17647b8626ae74c27"><div class="ttname"><a href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">Abstract_robot_decorator::mgi_hand_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00022">abstract_robot_decorator.h:22</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_ad725d88bfcce39d8e90c45b38b85e144"><div class="ttname"><a href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">Abstract_robot_decorator::workload_checker</a></div><div class="ttdeci">void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00043">abstract_robot_decorator.h:43</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a70a76cf36cdbe1179340b533b238151b"><div class="ttname"><a href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">Abstract_robot_decorator::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00037">abstract_robot_decorator.h:37</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a93929b117f84e353f322d353ad762d61"><div class="ttname"><a href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">Abstract_robot_decorator::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00035">abstract_robot_decorator.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_ae7c7ebc6cbf26f5e99649ffaabf7e419"><div class="ttname"><a href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">Abstract_robot_decorator::robot_root_bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; robot_root_bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00040">abstract_robot_decorator.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_ad0c58aab1a4758916e8b448f83b1eec7"><div class="ttname"><a href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">Abstract_robot_decorator::check_single_object_collision</a></div><div class="ttdeci">bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;b) override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00042">abstract_robot_decorator.h:42</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a41ecd95589c9236d7fc82921276339c7"><div class="ttname"><a href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">Abstract_robot_decorator::next_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_robot &gt; next_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00020">abstract_robot_decorator.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html"><div class="ttname"><a href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00018">abstract_robot_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_aea8ffc58bc7a4187d8d28440e4395174"><div class="ttname"><a href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">Abstract_robot_decorator::next</a></div><div class="ttdeci">Abstract_robot * next()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00045">abstract_robot_decorator.h:45</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_ac4f20979cd3cdb659a380511ef509b90"><div class="ttname"><a href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">Abstract_robot_decorator::spezifie_robot_groups</a></div><div class="ttdeci">virtual void spezifie_robot_groups()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a7fdba4f8a000b15b7a367066b0d79910"><div class="ttname"><a href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">Abstract_robot_decorator::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00038">abstract_robot_decorator.h:38</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a625e198b41f5965ac3fca6673d4039a7"><div class="ttname"><a href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">Abstract_robot_decorator::grasp_map_generator_</a></div><div class="ttdeci">std::shared_ptr&lt; MapGenerator &gt; grasp_map_generator_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00025">abstract_robot_decorator.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a5a2e4b619b74d083b4497af183948950"><div class="ttname"><a href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">Abstract_robot_decorator::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf() override</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00036">abstract_robot_decorator.h:36</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot__element__decorator_8cpp.html b/doc/html/abstract__robot__element__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..98f0ae35966f0a06b2e2f7f86a66b2a5080c6ff5
--- /dev/null
+++ b/doc/html/abstract__robot__element__decorator_8cpp.html
@@ -0,0 +1,39 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_robot_element_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="abstract__robot__element__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__robot__element__decorator_8cpp_source.html b/doc/html/abstract__robot__element__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2942de4356dc8950eea43529ef4c3c56c096c9fb
--- /dev/null
+++ b/doc/html/abstract__robot__element__decorator_8cpp_source.html
@@ -0,0 +1,37 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_robot_element_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__robot__element__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"></div><!-- fragment --></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__strategy_8h.html b/doc/html/abstract__strategy_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..f27cd231ad2901f7f5793c470e51195ea669fcbd
--- /dev/null
+++ b/doc/html/abstract__strategy_8h.html
@@ -0,0 +1,98 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_strategy.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">abstract_strategy.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for abstract_strategy.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__strategy_8h__incl.png" border="0" usemap="#abstract__strategy_8h" alt=""/></div>
+<map name="abstract__strategy_8h" id="abstract__strategy_8h">
+<area shape="rect" title=" " alt="" coords="578,5,725,32"/>
+<area shape="rect" title=" " alt="" coords="464,326,543,353"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="550,80,754,107"/>
+<area shape="rect" title=" " alt="" coords="777,155,926,181"/>
+<area shape="rect" title=" " alt="" coords="1184,326,1383,353"/>
+<area shape="rect" title=" " alt="" coords="950,155,1102,181"/>
+<area shape="rect" title=" " alt="" coords="63,155,195,181"/>
+<area shape="rect" title=" " alt="" coords="219,155,362,181"/>
+<area shape="rect" title=" " alt="" coords="386,155,499,181"/>
+<area shape="rect" title=" " alt="" coords="523,155,655,181"/>
+<area shape="rect" title=" " alt="" coords="679,155,752,181"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1127,155,1288,181"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1037,229,1186,271"/>
+<area shape="rect" title=" " alt="" coords="1013,319,1160,360"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="abstract__strategy_8h__dep__incl.png" border="0" usemap="#abstract__strategy_8hdep" alt=""/></div>
+<map name="abstract__strategy_8hdep" id="abstract__strategy_8hdep">
+<area shape="rect" title=" " alt="" coords="246,5,393,32"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="234,229,405,256"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="21,304,167,331"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="445,379,578,405"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="959,80,1087,107"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="243,304,353,331"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="730,379,855,405"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="1106,453,1274,480"/>
+<area shape="rect" href="base__by__rotation_8cpp.html" title=" " alt="" coords="5,379,167,405"/>
+<area shape="rect" href="map__loader_8cpp.html" title=" " alt="" coords="293,379,420,405"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="861,229,1015,256"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="1077,304,1170,331"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="1465,379,1654,405"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1245,304,1391,331"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1120,155,1188,181"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="733,304,901,331"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="1044,379,1152,405"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1457,453,1661,480"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="1228,379,1389,405"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="1299,229,1420,256"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="1141,229,1223,256"/>
+</map>
+</div>
+</div>
+<p><a href="abstract__strategy_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/abstract__strategy_8h__dep__incl.map b/doc/html/abstract__strategy_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..fa94fa947a546c9617589afd0bc10037438ad1c8
--- /dev/null
+++ b/doc/html/abstract__strategy_8h__dep__incl.map
@@ -0,0 +1,23 @@
+<map id="abstract_strategy.h" name="abstract_strategy.h">
+<area shape="rect" id="node1" title=" " alt="" coords="246,5,393,32"/>
+<area shape="rect" id="node2" href="$abstract__map__loader_8h.html" title=" " alt="" coords="234,229,405,256"/>
+<area shape="rect" id="node3" href="$base__by__rotation_8h.html" title=" " alt="" coords="21,304,167,331"/>
+<area shape="rect" id="node4" href="$base__routine_8cpp.html" title=" " alt="" coords="445,379,578,405"/>
+<area shape="rect" id="node10" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="959,80,1087,107"/>
+<area shape="rect" id="node6" href="$map__loader_8h.html" title=" " alt="" coords="243,304,353,331"/>
+<area shape="rect" id="node7" href="$cell__routine_8cpp.html" title=" " alt="" coords="730,379,855,405"/>
+<area shape="rect" id="node8" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="1106,453,1274,480"/>
+<area shape="rect" id="node5" href="$base__by__rotation_8cpp.html" title=" " alt="" coords="5,379,167,405"/>
+<area shape="rect" id="node9" href="$map__loader_8cpp.html" title=" " alt="" coords="293,379,420,405"/>
+<area shape="rect" id="node11" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="861,229,1015,256"/>
+<area shape="rect" id="node12" href="$mediator_8h.html" title=" " alt="" coords="1077,304,1170,331"/>
+<area shape="rect" id="node14" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="1465,379,1654,405"/>
+<area shape="rect" id="node16" href="$moveit__mediator_8h.html" title=" " alt="" coords="1245,304,1391,331"/>
+<area shape="rect" id="node19" href="$robot_8h.html" title=" " alt="" coords="1120,155,1188,181"/>
+<area shape="rect" id="node18" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="733,304,901,331"/>
+<area shape="rect" id="node13" href="$mediator_8cpp.html" title=" " alt="" coords="1044,379,1152,405"/>
+<area shape="rect" id="node15" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1457,453,1661,480"/>
+<area shape="rect" id="node17" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="1228,379,1389,405"/>
+<area shape="rect" id="node20" href="$moveit__robot_8h.html" title=" " alt="" coords="1299,229,1420,256"/>
+<area shape="rect" id="node21" href="$robot_8cpp.html" title=" " alt="" coords="1141,229,1223,256"/>
+</map>
diff --git a/doc/html/abstract__strategy_8h__dep__incl.md5 b/doc/html/abstract__strategy_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c163b7e39e6d01e9e3044487716c461fac149589
--- /dev/null
+++ b/doc/html/abstract__strategy_8h__dep__incl.md5
@@ -0,0 +1 @@
+1d34dcb410b7f8666e6ca8c292177058
\ No newline at end of file
diff --git a/doc/html/abstract__strategy_8h__dep__incl.png b/doc/html/abstract__strategy_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..5c223c9c41b92c90e95e41b77f819b7d94d70936
Binary files /dev/null and b/doc/html/abstract__strategy_8h__dep__incl.png differ
diff --git a/doc/html/abstract__strategy_8h__incl.map b/doc/html/abstract__strategy_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d765ea3954ab41819bd1982e1a48729e2eb2ead8
--- /dev/null
+++ b/doc/html/abstract__strategy_8h__incl.map
@@ -0,0 +1,16 @@
+<map id="abstract_strategy.h" name="abstract_strategy.h">
+<area shape="rect" id="node1" title=" " alt="" coords="578,5,725,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="464,326,543,353"/>
+<area shape="rect" id="node3" href="$abstract__map__loader_8h.html" title=" " alt="" coords="550,80,754,107"/>
+<area shape="rect" id="node4" title=" " alt="" coords="777,155,926,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1184,326,1383,353"/>
+<area shape="rect" id="node6" title=" " alt="" coords="950,155,1102,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="63,155,195,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="219,155,362,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="386,155,499,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="523,155,655,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="679,155,752,181"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1127,155,1288,181"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1037,229,1186,271"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1013,319,1160,360"/>
+</map>
diff --git a/doc/html/abstract__strategy_8h__incl.md5 b/doc/html/abstract__strategy_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..99e66dcf212be326e7e78129d060df5d7f9c2573
--- /dev/null
+++ b/doc/html/abstract__strategy_8h__incl.md5
@@ -0,0 +1 @@
+48f5598824c9a9d6d7198d354601c669
\ No newline at end of file
diff --git a/doc/html/abstract__strategy_8h__incl.png b/doc/html/abstract__strategy_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..a1b5cbedf6bda2fb804d96ec7106bd2474677446
Binary files /dev/null and b/doc/html/abstract__strategy_8h__incl.png differ
diff --git a/doc/html/abstract__strategy_8h_source.html b/doc/html/abstract__strategy_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc6ba5ddeb302fa2c833a1e17530b94f5b6dfc53
--- /dev/null
+++ b/doc/html/abstract__strategy_8h_source.html
@@ -0,0 +1,60 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_strategy.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">abstract_strategy.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="abstract__strategy_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_STRATEGY_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_STRATEGY_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>;</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classAbstract__strategy.html">    8</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__strategy.html">Abstract_strategy</a> {</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <a class="code" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">~Abstract_strategy</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">inv_map_creation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var)=0;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">cloud_calculation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var)=0;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;};</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__strategy_html_a20c07f343817632f5f946fdb7734159f"><div class="ttname"><a href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">Abstract_strategy::inv_map_creation</a></div><div class="ttdeci">virtual void inv_map_creation(Abstract_map_loader *var)=0</div></div>
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__strategy_html_acfa25fc51d61ef553f5b588732d67335"><div class="ttname"><a href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">Abstract_strategy::cloud_calculation</a></div><div class="ttdeci">virtual void cloud_calculation(Abstract_map_loader *var)=0</div></div>
+<div class="ttc" id="aclassAbstract__strategy_html_accc89e872cb004dc89a51996b8038f5a"><div class="ttname"><a href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy::Abstract_strategy</a></div><div class="ttdeci">Abstract_strategy()=default</div></div>
+<div class="ttc" id="aclassAbstract__strategy_html"><div class="ttname"><a href="classAbstract__strategy.html">Abstract_strategy</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__strategy_8h_source.html#l00008">abstract_strategy.h:8</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__strategy_html_a42ded383c401bd6cc047f5c6064f5e8d"><div class="ttname"><a href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">Abstract_strategy::~Abstract_strategy</a></div><div class="ttdeci">~Abstract_strategy()=default</div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/annotated.html b/doc/html/annotated.html
new file mode 100644
index 0000000000000000000000000000000000000000..3225133715a8ed31376ad389fb8dbb569917074f
--- /dev/null
+++ b/doc/html/annotated.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Class List</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__base.html" target="_self">Abstract_base</a></td><td class="desc">Abstract base class </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__base__implementation.html" target="_self">Abstract_base_implementation</a></td><td class="desc">Abstract base implementation </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__map__loader.html" target="_self">Abstract_map_loader</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__mediator.html" target="_self">Abstract_mediator</a></td><td class="desc">Abstract mediator </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__param__reader.html" target="_self">Abstract_param_reader</a></td><td class="desc">Abstract ROS-Param reader class </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot.html" target="_self">Abstract_robot</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__decorator.html" target="_self">Abstract_robot_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__element.html" target="_self">Abstract_robot_element</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__element__decorator.html" target="_self">Abstract_robot_element_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__strategy.html" target="_self">Abstract_strategy</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBase__by__rotation.html" target="_self">Base_by_rotation</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBase__calculation__mediator.html" target="_self">Base_calculation_mediator</a></td><td class="desc">Concrete <a class="el" href="classMediator.html">Mediator</a> </td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCeti__robot.html" target="_self">Ceti_robot</a></td><td class="desc">Concrete Ceti-Robot </td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCollision__helper.html" target="_self">Collision_helper</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCuboid__reader.html" target="_self">Cuboid_reader</a></td><td class="desc">Cuboid reader </td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classField.html" target="_self">Field</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classField__rviz__decorator.html" target="_self">Field_rviz_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structjob__data.html" target="_self">job_data</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classJob__reader.html" target="_self">Job_reader</a></td><td class="desc">Job reader </td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classLog__decorator.html" target="_self">Log_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMap__loader.html" target="_self">Map_loader</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMap__reader.html" target="_self">Map_reader</a></td><td class="desc">Map reader </td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMediator.html" target="_self">Mediator</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__grasp__mediator.html" target="_self">Moveit_grasp_mediator</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__mediator.html" target="_self">Moveit_mediator</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__panel.html" target="_self">Moveit_panel</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__robot.html" target="_self">Moveit_robot</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structobject__data.html" target="_self">object_data</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPanda__decorator.html" target="_self">Panda_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPanel.html" target="_self">Panel</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRobot.html" target="_self">Robot</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRobot__reader.html" target="_self">Robot_reader</a></td><td class="desc"><a class="el" href="classRobot.html">Robot</a> reader </td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRviz__panel.html" target="_self">Rviz_panel</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSimple__base.html" target="_self">Simple_base</a></td><td class="desc">Refiend base abstraction </td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSimple__base__implementation.html" target="_self">Simple_base_implementation</a></td><td class="desc">Refined base implementation </td></tr>
+<tr id="row_35_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classTask__space__reader.html" target="_self">Task_space_reader</a></td><td class="desc">Task space reader </td></tr>
+<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classTs__reader.html" target="_self">Ts_reader</a></td><td class="desc">TS reader </td></tr>
+<tr id="row_37_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing.html" target="_self">Wing</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structwing__BP.html" target="_self">wing_BP</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__moveit__decorator.html" target="_self">Wing_moveit_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__reader.html" target="_self">Wing_reader</a></td><td class="desc"><a class="el" href="classWing.html">Wing</a> reader </td></tr>
+<tr id="row_41_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__rviz__decorator.html" target="_self">Wing_rviz_decorator</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__by__rotation_8cpp.html b/doc/html/base__by__rotation_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..e02bdfd9483d8a8ef8a0fa1d622f3511318d0093
--- /dev/null
+++ b/doc/html/base__by__rotation_8cpp.html
@@ -0,0 +1,63 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_by_rotation.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_by_rotation.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="base__by__rotation_8h_source.html">impl/base_by_rotation.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for base_by_rotation.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__by__rotation_8cpp__incl.png" border="0" usemap="#base__by__rotation_8cpp" alt=""/></div>
+<map name="base__by__rotation_8cpp" id="base__by__rotation_8cpp">
+<area shape="rect" title=" " alt="" coords="14,5,175,32"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="5,80,184,107"/>
+<area shape="rect" title=" " alt="" coords="121,401,199,427"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="478,155,682,181"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="71,311,249,338"/>
+<area shape="rect" title=" " alt="" coords="393,229,543,256"/>
+<area shape="rect" title=" " alt="" coords="449,401,647,427"/>
+<area shape="rect" title=" " alt="" coords="617,229,769,256"/>
+<area shape="rect" title=" " alt="" coords="794,229,926,256"/>
+<area shape="rect" title=" " alt="" coords="950,229,1093,256"/>
+<area shape="rect" title=" " alt="" coords="1117,229,1230,256"/>
+<area shape="rect" title=" " alt="" coords="1254,229,1386,256"/>
+<area shape="rect" title=" " alt="" coords="1410,229,1483,256"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="207,229,369,256"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="324,304,473,345"/>
+<area shape="rect" title=" " alt="" coords="277,393,424,435"/>
+</map>
+</div>
+</div>
+<p><a href="base__by__rotation_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__by__rotation_8cpp__incl.map b/doc/html/base__by__rotation_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..3dde25423391852117395a7c3f555adc988b2b78
--- /dev/null
+++ b/doc/html/base__by__rotation_8cpp__incl.map
@@ -0,0 +1,18 @@
+<map id="base_by_rotation.cpp" name="base_by_rotation.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="14,5,175,32"/>
+<area shape="rect" id="node2" href="$base__by__rotation_8h.html" title=" " alt="" coords="5,80,184,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="121,401,199,427"/>
+<area shape="rect" id="node4" href="$abstract__map__loader_8h.html" title=" " alt="" coords="478,155,682,181"/>
+<area shape="rect" id="node14" href="$abstract__strategy_8h.html" title=" " alt="" coords="71,311,249,338"/>
+<area shape="rect" id="node5" title=" " alt="" coords="393,229,543,256"/>
+<area shape="rect" id="node6" title=" " alt="" coords="449,401,647,427"/>
+<area shape="rect" id="node7" title=" " alt="" coords="617,229,769,256"/>
+<area shape="rect" id="node8" title=" " alt="" coords="794,229,926,256"/>
+<area shape="rect" id="node9" title=" " alt="" coords="950,229,1093,256"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1117,229,1230,256"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1254,229,1386,256"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1410,229,1483,256"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="207,229,369,256"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="324,304,473,345"/>
+<area shape="rect" id="node16" title=" " alt="" coords="277,393,424,435"/>
+</map>
diff --git a/doc/html/base__by__rotation_8cpp__incl.md5 b/doc/html/base__by__rotation_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..4bf3f48646f0c1714f51a33ab1666385f0ecd12e
--- /dev/null
+++ b/doc/html/base__by__rotation_8cpp__incl.md5
@@ -0,0 +1 @@
+dd7cdb402f89f177c466f20f2945a9b7
\ No newline at end of file
diff --git a/doc/html/base__by__rotation_8cpp__incl.png b/doc/html/base__by__rotation_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..6794a7942e35e1c21c3af35220ffb090fbeca77d
Binary files /dev/null and b/doc/html/base__by__rotation_8cpp__incl.png differ
diff --git a/doc/html/base__by__rotation_8cpp_source.html b/doc/html/base__by__rotation_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..161b7b450b635ee85f9e354a31cd9c02ebe5e6a6
--- /dev/null
+++ b/doc/html/base__by__rotation_8cpp_source.html
@@ -0,0 +1,99 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_by_rotation.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_by_rotation.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="base__by__rotation_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="base__by__rotation_8h.html">impl/base_by_rotation.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">    4</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation::inv_map_creation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var) {</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;starting base calculation implementation...&quot;</span>);</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;condition based [inv_map] calculation...&quot;</span>);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::vector&lt;tf2::Transform&gt; trans;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>().size(); i++) {</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> x = 0; x &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>().size(); x++) {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> y = 0; y &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[x].size(); y++) {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> p = 0; p &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[x][y].size(); p++){</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;                    <span class="keywordflow">if</span> (var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[x][y][p].angle(var-&gt;<a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>()[i].getRotation()) &lt; 0.349066f) {</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                        trans.push_back(tf2::Transform(var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[x][y][p], var-&gt;<a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>()[i].getOrigin()).inverse());</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                        <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;                    }                        </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;                }</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            }</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        }</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    }</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    var-&gt;<a class="code" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a>(trans);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;caculated [inv_map] contains %li entrys...&quot;</span>, var-&gt;<a class="code" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>().size());</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;};</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">   24</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation::cloud_calculation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var) {</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;initialyze thread implementations...&quot;</span>);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <span class="comment">// Optimize targets in later implementation</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt; target_clouds;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    target_clouds.resize(var-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>().size());</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; target_clouds.size(); i++) {</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>()[i].size();j++) {</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;            target_clouds[i].push_back(pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr(<span class="keyword">new</span> pcl::PointCloud&lt; pcl::PointXYZ &gt;));</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        }</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    }</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="comment">// Maybe OpenMP</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;start [cloud] calculation...&quot;</span>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    tf2::Transform root(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0.4425f));</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; target_clouds.size(); i++){</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; target_clouds[i].size(); j++) {</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> y = 0; y &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>().size(); y++) {</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> x = 0; x &lt; var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[i][j].size(); x++) {</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                    tf2::Transform target = var-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>()[i][j]; target.setRotation(var-&gt;<a class="code" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()[i][j][x]);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                    tf2::Transform base = target * (var-&gt;<a class="code" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>()[y] * root);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;                    target_clouds[i][j]-&gt;push_back(pcl::PointXYZ(base.getOrigin().getX(), base.getOrigin().getY(), base.getOrigin().getZ()));</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                }</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;            }</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        }</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    }</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    var-&gt;<a class="code" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a>(target_clouds);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;[cloud]calculation done...&quot;</span>);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__map__loader_html_a297e8f8fa66f70678d19d321033eea4d"><div class="ttname"><a href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">Abstract_map_loader::set_inv_map</a></div><div class="ttdeci">void set_inv_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00043">abstract_map_loader.h:43</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_af4f75fbdda254f2a506770969cc46d8e"><div class="ttname"><a href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">Abstract_map_loader::inv_map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; inv_map()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00041">abstract_map_loader.h:41</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_ad3d528929f1ec7bd2ddeed2c68a9fbc4"><div class="ttname"><a href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation::inv_map_creation</a></div><div class="ttdeci">void inv_map_creation(Abstract_map_loader *var) override</div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8cpp_source.html#l00004">base_by_rotation.cpp:4</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a13fb2cd6ac1a353192161e053426d7c8"><div class="ttname"><a href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">Abstract_map_loader::map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00042">abstract_map_loader.h:42</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a2945aff76228233abb3a89477c013d8a"><div class="ttname"><a href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">Abstract_map_loader::set_target_cloud</a></div><div class="ttdeci">void set_target_cloud(std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00049">abstract_map_loader.h:49</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aa9772fe2bd594967b8f7b980db442ca5"><div class="ttname"><a href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader::task_grasps</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp; task_grasps()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00046">abstract_map_loader.h:46</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_a910ed8dac159764f4b045f07c7ac2372"><div class="ttname"><a href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation::cloud_calculation</a></div><div class="ttdeci">void cloud_calculation(Abstract_map_loader *var) override</div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8cpp_source.html#l00024">base_by_rotation.cpp:24</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="abase__by__rotation_8h_html"><div class="ttname"><a href="base__by__rotation_8h.html">base_by_rotation.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_abdd0484ea0507910d37b0eae257b6476"><div class="ttname"><a href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">Abstract_map_loader::target_rot</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &amp; target_rot()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00047">abstract_map_loader.h:47</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__by__rotation_8h.html b/doc/html/base__by__rotation_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd0a889b5b245590e4cccb8bb707c9267396c5bd
--- /dev/null
+++ b/doc/html/base__by__rotation_8h.html
@@ -0,0 +1,82 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_by_rotation.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">base_by_rotation.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__strategy_8h_source.html">impl/abstract_strategy.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for base_by_rotation.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__by__rotation_8h__incl.png" border="0" usemap="#base__by__rotation_8h" alt=""/></div>
+<map name="base__by__rotation_8h" id="base__by__rotation_8h">
+<area shape="rect" title=" " alt="" coords="5,5,152,32"/>
+<area shape="rect" title=" " alt="" coords="105,326,183,353"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="462,80,666,107"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="55,237,233,263"/>
+<area shape="rect" title=" " alt="" coords="377,155,527,181"/>
+<area shape="rect" title=" " alt="" coords="433,326,631,353"/>
+<area shape="rect" title=" " alt="" coords="601,155,753,181"/>
+<area shape="rect" title=" " alt="" coords="778,155,910,181"/>
+<area shape="rect" title=" " alt="" coords="934,155,1077,181"/>
+<area shape="rect" title=" " alt="" coords="1101,155,1214,181"/>
+<area shape="rect" title=" " alt="" coords="1238,155,1370,181"/>
+<area shape="rect" title=" " alt="" coords="1394,155,1467,181"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="191,155,353,181"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="308,229,457,271"/>
+<area shape="rect" title=" " alt="" coords="261,319,408,360"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__by__rotation_8h__dep__incl.png" border="0" usemap="#base__by__rotation_8hdep" alt=""/></div>
+<map name="base__by__rotation_8hdep" id="base__by__rotation_8hdep">
+<area shape="rect" title=" " alt="" coords="84,5,231,32"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" href="base__by__rotation_8cpp.html" title=" " alt="" coords="163,80,325,107"/>
+</map>
+</div>
+</div>
+<p><a href="base__by__rotation_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__by__rotation_8h__dep__incl.map b/doc/html/base__by__rotation_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..f638682c777a258e55d066a506c25393844b29c4
--- /dev/null
+++ b/doc/html/base__by__rotation_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="base_by_rotation.h" name="base_by_rotation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="84,5,231,32"/>
+<area shape="rect" id="node2" href="$base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" id="node3" href="$base__by__rotation_8cpp.html" title=" " alt="" coords="163,80,325,107"/>
+</map>
diff --git a/doc/html/base__by__rotation_8h__dep__incl.md5 b/doc/html/base__by__rotation_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a456eca0d05ca8f35ad39ff15ee5de736eaceadd
--- /dev/null
+++ b/doc/html/base__by__rotation_8h__dep__incl.md5
@@ -0,0 +1 @@
+b567c0c33a8cd10baedffdb118a9e3b0
\ No newline at end of file
diff --git a/doc/html/base__by__rotation_8h__dep__incl.png b/doc/html/base__by__rotation_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1225d76ec1c8e1c15ab48bf90d9eb4298e33f671
Binary files /dev/null and b/doc/html/base__by__rotation_8h__dep__incl.png differ
diff --git a/doc/html/base__by__rotation_8h__incl.map b/doc/html/base__by__rotation_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d9df17fe9af819ac8af1fc72f8cbded86fd4ffe6
--- /dev/null
+++ b/doc/html/base__by__rotation_8h__incl.map
@@ -0,0 +1,17 @@
+<map id="base_by_rotation.h" name="base_by_rotation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="5,5,152,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="105,326,183,353"/>
+<area shape="rect" id="node3" href="$abstract__map__loader_8h.html" title=" " alt="" coords="462,80,666,107"/>
+<area shape="rect" id="node13" href="$abstract__strategy_8h.html" title=" " alt="" coords="55,237,233,263"/>
+<area shape="rect" id="node4" title=" " alt="" coords="377,155,527,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="433,326,631,353"/>
+<area shape="rect" id="node6" title=" " alt="" coords="601,155,753,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="778,155,910,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="934,155,1077,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1101,155,1214,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1238,155,1370,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1394,155,1467,181"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="191,155,353,181"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="308,229,457,271"/>
+<area shape="rect" id="node15" title=" " alt="" coords="261,319,408,360"/>
+</map>
diff --git a/doc/html/base__by__rotation_8h__incl.md5 b/doc/html/base__by__rotation_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..fc1b1206cda4d31485cbcdbf4c2fb0a4362a7147
--- /dev/null
+++ b/doc/html/base__by__rotation_8h__incl.md5
@@ -0,0 +1 @@
+a001b4e93e5c668894c68ad596d6fcb4
\ No newline at end of file
diff --git a/doc/html/base__by__rotation_8h__incl.png b/doc/html/base__by__rotation_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ffd6ca93737a33dd3ba76cd2ded9ba5f95216e33
Binary files /dev/null and b/doc/html/base__by__rotation_8h__incl.png differ
diff --git a/doc/html/base__by__rotation_8h_source.html b/doc/html/base__by__rotation_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..8edb535784f9e92b2a1a5290a43491218cb2852c
--- /dev/null
+++ b/doc/html/base__by__rotation_8h_source.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_by_rotation.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_by_rotation.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="base__by__rotation_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef BASE_BY_ROTATION_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define BASE_BY_ROTATION_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__strategy_8h.html">impl/abstract_strategy.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classBase__by__rotation.html">    9</a></span>&#160;<span class="keyword">class </span><a class="code" href="classBase__by__rotation.html">Base_by_rotation</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__strategy.html">Abstract_strategy</a> {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <a class="code" href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">~Base_by_rotation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">inv_map_creation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">cloud_calculation</a>(<a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* var) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;};</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_ad3d528929f1ec7bd2ddeed2c68a9fbc4"><div class="ttname"><a href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation::inv_map_creation</a></div><div class="ttdeci">void inv_map_creation(Abstract_map_loader *var) override</div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8cpp_source.html#l00004">base_by_rotation.cpp:4</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_aaf73fbd91908d8b3681e0d6c595bb858"><div class="ttname"><a href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation::Base_by_rotation</a></div><div class="ttdeci">Base_by_rotation()=default</div></div>
+<div class="ttc" id="aclassAbstract__strategy_html"><div class="ttname"><a href="classAbstract__strategy.html">Abstract_strategy</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__strategy_8h_source.html#l00008">abstract_strategy.h:8</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_a63a6ed1a606880c99c0bc96f666d83ba"><div class="ttname"><a href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">Base_by_rotation::~Base_by_rotation</a></div><div class="ttdeci">~Base_by_rotation()=default</div></div>
+<div class="ttc" id="aclassBase__by__rotation_html_a910ed8dac159764f4b045f07c7ac2372"><div class="ttname"><a href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation::cloud_calculation</a></div><div class="ttdeci">void cloud_calculation(Abstract_map_loader *var) override</div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8cpp_source.html#l00024">base_by_rotation.cpp:24</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html"><div class="ttname"><a href="classBase__by__rotation.html">Base_by_rotation</a></div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8h_source.html#l00009">base_by_rotation.h:9</a></div></div>
+<div class="ttc" id="aabstract__strategy_8h_html"><div class="ttname"><a href="abstract__strategy_8h.html">abstract_strategy.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__calculation__mediator_8cpp.html b/doc/html/base__calculation__mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b2ecabb1d9713c1d920259c659f948a1acee2c5
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8cpp.html
@@ -0,0 +1,84 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_calculation_mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_calculation_mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="base__calculation__mediator_8h_source.html">mediator/base_calculation_mediator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for base_calculation_mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__calculation__mediator_8cpp__incl.png" border="0" usemap="#base__calculation__mediator_8cpp" alt=""/></div>
+<map name="base__calculation__mediator_8cpp" id="base__calculation__mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="2946,5,3170,32"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="2961,80,3155,121"/>
+<area shape="rect" title=" " alt="" coords="1051,527,1129,553"/>
+<area shape="rect" title=" " alt="" coords="3391,445,3504,471"/>
+<area shape="rect" title=" " alt="" coords="4172,445,4304,471"/>
+<area shape="rect" title=" " alt="" coords="4328,445,4401,471"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2950,169,3166,196"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="3145,348,3312,375"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1684,251,1821,278"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="3473,251,3633,278"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="220,244,405,285"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="5,244,196,285"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="3674,251,3837,278"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="2391,244,2578,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1131,437,1305,479"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="3307,251,3449,278"/>
+<area shape="rect" title=" " alt="" coords="2654,251,2806,278"/>
+<area shape="rect" title=" " alt="" coords="2831,251,2963,278"/>
+<area shape="rect" title=" " alt="" coords="2987,251,3129,278"/>
+<area shape="rect" title=" " alt="" coords="2667,341,2854,382"/>
+<area shape="rect" title=" " alt="" coords="1309,333,1501,389"/>
+<area shape="rect" title=" " alt="" coords="1525,341,1743,382"/>
+<area shape="rect" title=" " alt="" coords="1768,341,1975,382"/>
+<area shape="rect" title=" " alt="" coords="1999,333,2155,389"/>
+<area shape="rect" title=" " alt="" coords="2179,341,2353,382"/>
+<area shape="rect" title=" " alt="" coords="2377,341,2593,382"/>
+<area shape="rect" title=" " alt="" coords="2879,348,3069,375"/>
+<area shape="rect" title=" " alt="" coords="3253,527,3452,553"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="521,333,712,389"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="736,341,921,382"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="997,341,1183,382"/>
+<area shape="rect" title=" " alt="" coords="3579,445,3729,471"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="3793,341,3963,382"/>
+<area shape="rect" title=" " alt="" coords="3803,445,3862,471"/>
+<area shape="rect" title=" " alt="" coords="3886,437,4046,479"/>
+<area shape="rect" title=" " alt="" coords="198,341,345,382"/>
+<area shape="rect" title=" " alt="" coords="27,341,174,382"/>
+</map>
+</div>
+</div>
+<p><a href="base__calculation__mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__calculation__mediator_8cpp__incl.map b/doc/html/base__calculation__mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..f0398288ad1328c7447e2babe988cb5c56dd377d
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8cpp__incl.map
@@ -0,0 +1,39 @@
+<map id="base_calculation_mediator.cpp" name="base_calculation_mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2946,5,3170,32"/>
+<area shape="rect" id="node2" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="2961,80,3155,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1051,527,1129,553"/>
+<area shape="rect" id="node4" title=" " alt="" coords="3391,445,3504,471"/>
+<area shape="rect" id="node5" title=" " alt="" coords="4172,445,4304,471"/>
+<area shape="rect" id="node6" title=" " alt="" coords="4328,445,4401,471"/>
+<area shape="rect" id="node7" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2950,169,3166,196"/>
+<area shape="rect" id="node9" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="3145,348,3312,375"/>
+<area shape="rect" id="node20" href="$ceti__robot_8h.html" title=" " alt="" coords="1684,251,1821,278"/>
+<area shape="rect" id="node24" href="$wing__reader_8h.html" title=" " alt="" coords="3473,251,3633,278"/>
+<area shape="rect" id="node33" href="$rviz__panel_8h.html" title=" " alt="" coords="220,244,405,285"/>
+<area shape="rect" id="node35" href="$log__decorator_8h.html" title=" " alt="" coords="5,244,196,285"/>
+<area shape="rect" id="node37" href="$robot__reader_8h.html" title=" " alt="" coords="3674,251,3837,278"/>
+<area shape="rect" id="node8" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="2391,244,2578,285"/>
+<area shape="rect" id="node11" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1131,437,1305,479"/>
+<area shape="rect" id="node29" href="$ts__reader_8h.html" title=" " alt="" coords="3307,251,3449,278"/>
+<area shape="rect" id="node30" title=" " alt="" coords="2654,251,2806,278"/>
+<area shape="rect" id="node31" title=" " alt="" coords="2831,251,2963,278"/>
+<area shape="rect" id="node32" title=" " alt="" coords="2987,251,3129,278"/>
+<area shape="rect" id="node12" title=" " alt="" coords="2667,341,2854,382"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1309,333,1501,389"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1525,341,1743,382"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1768,341,1975,382"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1999,333,2155,389"/>
+<area shape="rect" id="node17" title=" " alt="" coords="2179,341,2353,382"/>
+<area shape="rect" id="node18" title=" " alt="" coords="2377,341,2593,382"/>
+<area shape="rect" id="node19" title=" " alt="" coords="2879,348,3069,375"/>
+<area shape="rect" id="node10" title=" " alt="" coords="3253,527,3452,553"/>
+<area shape="rect" id="node21" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="521,333,712,389"/>
+<area shape="rect" id="node22" href="$panel_8h.html" title=" " alt="" coords="736,341,921,382"/>
+<area shape="rect" id="node23" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="997,341,1183,382"/>
+<area shape="rect" id="node25" title=" " alt="" coords="3579,445,3729,471"/>
+<area shape="rect" id="node26" href="$abstract__param__reader_8h.html" title=" " alt="" coords="3793,341,3963,382"/>
+<area shape="rect" id="node27" title=" " alt="" coords="3803,445,3862,471"/>
+<area shape="rect" id="node28" title=" " alt="" coords="3886,437,4046,479"/>
+<area shape="rect" id="node34" title=" " alt="" coords="198,341,345,382"/>
+<area shape="rect" id="node36" title=" " alt="" coords="27,341,174,382"/>
+</map>
diff --git a/doc/html/base__calculation__mediator_8cpp__incl.md5 b/doc/html/base__calculation__mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..16ada0a232f43a5de280ef00f5cab81cc1b41715
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+98b2b4bf8a6c82f6586013dddb894fa0
\ No newline at end of file
diff --git a/doc/html/base__calculation__mediator_8cpp__incl.png b/doc/html/base__calculation__mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..4b346f40032bd751ca0ae67ddba38ae80acaa7e6
Binary files /dev/null and b/doc/html/base__calculation__mediator_8cpp__incl.png differ
diff --git a/doc/html/base__calculation__mediator_8cpp_source.html b/doc/html/base__calculation__mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..32825af7d36ad246da5a7b9c2c7267893b062e7a
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8cpp_source.html
@@ -0,0 +1,541 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_calculation_mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_calculation_mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="base__calculation__mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="base__calculation__mediator_8h.html">mediator/base_calculation_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">    3</a></span>&#160;<a class="code" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator::Base_calculation_mediator</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    : <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>(d)</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    , wing_reader_(std::make_unique&lt;<a class="code" href="classWing__reader.html">Wing_reader</a>&gt;(d))</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    , robot_reader_(std::make_unique&lt;<a class="code" href="classRobot__reader.html">Robot_reader</a>&gt;(d))</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    , pub_(std::make_unique&lt;ros::Publisher&gt;()){};</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">    9</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">Base_calculation_mediator::generate_grounds</a>(<span class="keyword">const</span> tf2::Vector3 origin, <span class="keyword">const</span> <span class="keywordtype">float</span> diameter, <span class="keywordtype">float</span> resolution){</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.size();i++){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; ground_plane; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">float</span> x = origin.getX() - diameter * 1.5; x &lt;= origin.getX() + diameter * 1.5; x += resolution){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">float</span> y = origin.getY() - diameter * 1.5; y &lt;= origin.getY() + diameter * 1.5; y += resolution){</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        ground_plane.push_back(pcl::PointXYZ(x,y, 0.4425f));</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;%f&quot;</span>, <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[i]-&gt;tf().getOrigin().getZ());</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        }</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    }</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">grounds_</a>.insert(std::pair&lt;<span class="keyword">const</span> std::string, std::vector&lt;pcl::PointXYZ&gt;&gt;(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[i]-&gt;name(), ground_plane));</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;  }</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;}</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">   22</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator::connect_robots</a>(std::unique_ptr&lt;Abstract_robot_decorator&gt; robot) {</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;Connect&quot;</span>);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.push_back(std::move(robot)); </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;%s connected...&quot;</span>, <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.front()-&gt;name().c_str());</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;}</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">   28</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">Base_calculation_mediator::set_panel</a>(){</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.size(); i++){</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    }</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="comment">    for (int i =0; i &lt; wbp.size(); i++){</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">        std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt; v;</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">        for (int j =0; j &lt; wbp[i].first.size(); j++){</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">            std::unique_ptr&lt;Abstract_robot_element&gt; wing = std::make_unique&lt;Rviz_panel&gt;(wbp[i].first[j].name_, wbp[i].first[j].pose_,wbp[i].first[j].size_);</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment">            std::unique_ptr&lt;Abstract_robot_element&gt; log = std::make_unique&lt;Log_decorator&gt;(std::move(wing));</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">            v.push_back(std::move(log));</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">        wings_.push_back(v);</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;}</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">   45</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator::check_collision</a>( <span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keywordtype">bool</span> succ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    std::vector&lt;int&gt; count_v;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keyword">auto</span> r = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classCeti__robot.html">Ceti_robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot].get());</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    count_v.resize(r-&gt;observers().size()+1);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    std::string str;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keyword">auto</span> <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a> = <a class="code" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a>-&gt;drop_off_data();</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">    for(long unsigned int j = 0; j &lt; objects_[robot].size(); j++){</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">        visualization_msgs::Marker marker;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">        marker.header.frame_id = &quot;map&quot;;</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">        marker.header.stamp = ros::Time();</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">        marker.ns = &quot;objects &quot;;</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">        marker.id = j;</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">        marker.type = visualization_msgs::Marker::CUBE;</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">        marker.action = visualization_msgs::Marker::ADD;</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">        marker.pose.position.x = objects_[robot][j].getOrigin().getX();</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">        marker.pose.position.y = objects_[robot][j].getOrigin().getY();</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">        marker.pose.position.z = objects_[robot][j].getOrigin().getZ();</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">        marker.pose.orientation.x = objects_[robot][j].getRotation().getX();</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">        marker.pose.orientation.y = objects_[robot][j].getRotation().getY();</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">        marker.pose.orientation.z = objects_[robot][j].getRotation().getZ();</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">        marker.pose.orientation.w = objects_[robot][j].getRotation().getW();</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">        marker.scale.x = box_size.getX();</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">        marker.scale.y = box_size.getY();</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">        marker.scale.z = box_size.getZ();</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">        if(robots_[robot]-&gt;check_single_object_collision(objects_[robot][j], str)){</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">            marker.color.r = 0;</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">            marker.color.g = 1.0;</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="comment">            marker.color.b = 0;</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">            marker.color.a = 1;</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">        } else {</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">            marker.color.r = 1;</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">            marker.color.g = 0;</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">            marker.color.b = 0;</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">            marker.color.a = 1.0;</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">            succ = false;</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">        ma.markers.push_back(marker);</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">        robots_[robot]-&gt;workload_checker(count_v, objects_[robot][j]);</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="comment">    pub_-&gt;publish(ma);</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment">    for (int&amp; i : count_v){</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment">        if(i == 0) {succ = false; break;}</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="keywordflow">return</span> succ;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;}</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160; </div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">   99</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator::mediate</a>(){</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;assigne result to first robot...&quot;</span>);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <a class="code" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">generate_grounds</a>(tf2::Vector3(0,0,0), 3.0f, 0.1f);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">    std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; filter_per_robot;</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">    pcl::octree::OctreePointCloudSearch&lt; pcl::PointXYZ &gt;first_cloud(0.4f);</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">    first_cloud.setInputCloud(Abstract_mediator::vector_to_cloud(result_vector_[0]));</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">    first_cloud.addPointsFromInputCloud();</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="comment">    std::vector&lt;tf2::Transform&gt; ground_per_robot;</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment">    for(pcl::PointXYZ&amp; p : grCenter){</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">        double min_x, min_y, min_z, max_x, max_y, max_z;</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">        first_cloud.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="comment">        bool isInBox = (p.x &gt;= min_x &amp;&amp; p.x &lt;= max_x) &amp;&amp; (p.y &gt;= min_y &amp;&amp; p.y &lt;= max_y) &amp;&amp; (p.z &gt;= min_z &amp;&amp; p.z &lt;= max_z);</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">        if (isInBox &amp;&amp; first_cloud.isVoxelOccupiedAtPoint(p)) {</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">        std::vector&lt; int &gt; pointIdxVec;</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">        if (first_cloud.voxelSearch(p, pointIdxVec)) ground_per_robot.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(p.x, p.y, p.z)));</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">    for(int i = 0; i &lt; objects_.size(); i++){</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">        if (i+1 &lt; objects_.size()){</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">            for (long unsigned int j = objects_[i].size()-1; j &gt; 0; j--){</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">                if(objects_[i][j].getOrigin().distance(objects_[i+1].back().getOrigin()) == 0) objects_[i+1].pop_back();</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">    calculate(ground_per_robot);</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment">    //swap</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">    Abstract_robot* ar = robots_[1];</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">    robots_[1] = robots_[0];</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment">    robots_[0] = ar;</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">    </span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">    calculate(ground_per_robot);</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;}</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">  140</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">Base_calculation_mediator::calculate</a>(std::vector&lt;tf2::Transform&gt;&amp; ground_per_robot){</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keywordtype">int</span> r1 = 0; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="keyword">auto</span> ceti1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classCeti__robot.html">Ceti_robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[0].get());</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt;= 7; j++){</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        std::bitset&lt;3&gt; <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>(j);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">build_wings</a>(<a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>, r1);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        visualization_msgs::Marker m;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        m.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        m.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        m.ns = ceti1-&gt;name();</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        m.id = 1;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        m.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        m.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        m.pose.position.x = ceti1-&gt;tf().getOrigin().getX();</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        m.pose.position.y = ceti1-&gt;tf().getOrigin().getY();</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        m.pose.position.z = ceti1-&gt;tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        m.pose.orientation.x = ceti1-&gt;tf().getRotation().getX();</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        m.pose.orientation.y = ceti1-&gt;tf().getRotation().getY();</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        m.pose.orientation.z = ceti1-&gt;tf().getRotation().getZ();</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        m.pose.orientation.w = ceti1-&gt;tf().getRotation().getW();</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        m.scale.x = ceti1-&gt;size().getX();</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        m.scale.y = ceti1-&gt;size().getY();</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        m.scale.z = ceti1-&gt;tf().getOrigin().getZ()*2;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        m.color.r = 1.0;</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        m.color.g = 1.0;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        m.color.b = 1.0;</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        m.color.a = 1.0;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160; </div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        ros::Duration timer(0.10);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; ground_per_robot.size(); i++){</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;            ceti1-&gt;set_tf(ground_per_robot[i]);</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;            <span class="comment">// vis. robot 1</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;            <span class="keywordflow">for</span> ( <span class="keywordtype">float</span> p = 0; p &lt; 2*M_PI; p += 0.0872665f){</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;                ceti1-&gt;rotate(0.0872665f);</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                ceti1-&gt;notify();</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160; </div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                m.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;                m.pose.position.x = ceti1-&gt;tf().getOrigin().getX();</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                m.pose.position.y = ceti1-&gt;tf().getOrigin().getY();</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;                m.pose.position.z = ceti1-&gt;tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;                m.pose.orientation.x = ceti1-&gt;tf().getRotation().getX();</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                m.pose.orientation.y = ceti1-&gt;tf().getRotation().getY();</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                m.pose.orientation.z = ceti1-&gt;tf().getRotation().getZ();</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;                m.pose.orientation.w = ceti1-&gt;tf().getRotation().getW();</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                ma.markers.push_back(m);</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; ceti1-&gt;observers().size(); j++){</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                    <span class="keyword">auto</span> wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRviz__panel.html">Rviz_panel</a>*<span class="keyword">&gt;</span>(ceti1-&gt;observers()[j].get());</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                    ma.markers.push_back(wrd-&gt;marker());</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                }</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160; </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                ma.markers.clear();</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">check_collision</a>(r1)) {</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                    <a class="code" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">approximation</a>(ceti1);</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                }   <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                    <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                }</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;               <span class="comment">//timer.sleep();</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;            }</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        }</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        ceti1-&gt;reset();</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        m.action = visualization_msgs::Marker::DELETEALL;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    }</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;}</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160; </div>
+<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">  218</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">Base_calculation_mediator::approximation</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* robot){</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    <span class="keyword">auto</span> ceti1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classCeti__robot.html">Ceti_robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[1].get());</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keywordtype">int</span> r1 = 1;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160; </div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= 7; i++){</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        std::bitset&lt;3&gt; <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>(i);</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">build_wings</a>(<a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>, r1);</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;        visualization_msgs::Marker m;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        m.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        m.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        m.ns = ceti1-&gt;name();</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        m.id = 1;</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        m.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        m.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        m.pose.position.x = ceti1-&gt;tf().getOrigin().getX();</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        m.pose.position.y = ceti1-&gt;tf().getOrigin().getY();</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        m.pose.position.z = ceti1-&gt;tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        m.pose.orientation.x = ceti1-&gt;tf().getRotation().getX();</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        m.pose.orientation.y = ceti1-&gt;tf().getRotation().getY();</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        m.pose.orientation.z = ceti1-&gt;tf().getRotation().getZ();</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        m.pose.orientation.w = ceti1-&gt;tf().getRotation().getW();</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        m.scale.x = ceti1-&gt;size().getX();</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        m.scale.y = ceti1-&gt;size().getY();</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        m.scale.z = ceti1-&gt;tf().getOrigin().getZ()*2;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        m.color.r = 1.0;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        m.color.g = 1.0;</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        m.color.b = 1.0;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        m.color.a = 1.0;</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i  = 0 ; i &lt; robot-&gt;<a class="code" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">access_fields</a>().size(); i++) {</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;            ceti1-&gt;set_tf(robot-&gt;<a class="code" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">access_fields</a>()[i]-&gt;world_tf());</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;            <span class="comment">//ROS_INFO(&quot;field size %i&quot;, robot-&gt;access_fields().size());</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;            <span class="keywordflow">for</span> ( <span class="keywordtype">float</span> p = 0; p &lt; 2*M_PI; p += M_PI/2){</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;                ceti1-&gt;rotate(M_PI/2);</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;                ceti1-&gt;notify();</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160; </div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;                m.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;                m.pose.position.x = ceti1-&gt;tf().getOrigin().getX();</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;                m.pose.position.y = ceti1-&gt;tf().getOrigin().getY();</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;                m.pose.position.z = ceti1-&gt;tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;                m.pose.orientation.x = ceti1-&gt;tf().getRotation().getX();</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;                m.pose.orientation.y = ceti1-&gt;tf().getRotation().getY();</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;                m.pose.orientation.z = ceti1-&gt;tf().getRotation().getZ();</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;                m.pose.orientation.w = ceti1-&gt;tf().getRotation().getW();</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;                ma.markers.push_back(m);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;                </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;                <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt; ceti1-&gt;observers().size(); j++){</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;                    <span class="keyword">auto</span> wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRviz__panel.html">Rviz_panel</a>*<span class="keyword">&gt;</span>(ceti1-&gt;observers()[j].get());</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;                    ma.markers.push_back(wrd-&gt;marker());</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;                }</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160; </div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                ma.markers.clear();</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                <span class="keywordflow">if</span> (robot-&gt;<a class="code" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">in_collision</a>(ceti1)) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160; </div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">check_collision</a>(r1)) {</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                    ROS_INFO(<span class="stringliteral">&quot;penis&quot;</span>);</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                    <a class="code" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">write_file</a>(robot, ceti1);</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                    <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;                }</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160; </div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;            }</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            </div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;            <span class="comment">//relative_ground.push_back(pcl::PointXYZ(fields-&gt;world_tf().getOrigin().getX(), fields-&gt;world_tf().getOrigin().getY(), fields-&gt;world_tf().getOrigin().getZ()));</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        }</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        ceti1-&gt;reset();</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        m.action = visualization_msgs::Marker::DELETEALL;</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    }</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;}</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160; </div>
+<div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">  299</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">Base_calculation_mediator::write_file</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* A, <a class="code" href="classCeti__robot.html">Ceti_robot</a>* B){</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    std::ofstream o(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/results/&quot;</span> + <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a> + <span class="stringliteral">&quot;/&quot;</span> + std::to_string(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(ros::Time::now().toNSec())) + <span class="stringliteral">&quot;.yaml&quot;</span>);</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    <span class="keywordtype">double</span> r,p,y;</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    tf2::Matrix3x3 m(A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation());</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    m.getRPY(r,p,y);</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160; </div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; </div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <span class="keywordtype">float</span> size_x = A-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getX();</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <span class="keywordtype">float</span> size_y = A-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getY();</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keywordtype">float</span> size_z = A-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getZ();</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160; </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <span class="keywordtype">float</span> pos_x = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <span class="keywordtype">float</span> pos_y = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    <span class="keywordtype">float</span> pos_z = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getZ() *2 ;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="keywordtype">float</span> rot_x = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordtype">float</span> rot_y = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordtype">float</span> rot_z = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="keywordtype">float</span> rot_w = A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160; </div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160; </div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160; </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160; </div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;objects&#39; : [ \n&quot;</span>;</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_1&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_2&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }},\n&quot;</span>;</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_3&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_4&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_front&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0, &#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_back&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.45 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_left&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_right&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_table_top&#39;, &#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(pos_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(pos_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(pos_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(size_x) &lt;&lt; <span class="stringliteral">&quot; ,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(size_y) &lt;&lt; <span class="stringliteral">&quot; ,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(size_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(rot_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(rot_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(rot_z) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(rot_w) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }, &#39;rpy&#39;: { &#39;r&#39;: &quot;</span> &lt;&lt; std::to_string(r) &lt;&lt; <span class="stringliteral">&quot; , &#39;p&#39;: &quot;</span> &lt;&lt; std::to_string(p) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; } },\n&quot;</span>;</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    </div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    m.setRotation(B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation());</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    m.getRPY(r,p,y);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160; </div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    size_x = B-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getX();</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    size_y = B-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getY();</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    size_z = B-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getZ();</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160; </div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    pos_x = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    pos_y = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    pos_z = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getZ() *2 ;</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    rot_x = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    rot_y = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    rot_z = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    rot_w = B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160; </div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_1&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_2&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }},\n&quot;</span>;</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_3&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_4&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_front&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0, &#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_back&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.45 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_left&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_right&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_table_top&#39;, &#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(pos_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(pos_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(pos_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(size_x) &lt;&lt; <span class="stringliteral">&quot; ,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(size_y) &lt;&lt; <span class="stringliteral">&quot; ,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(size_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(rot_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(rot_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(rot_z) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(rot_w) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }, &#39;rpy&#39;: { &#39;r&#39;: &quot;</span> &lt;&lt; std::to_string(r) &lt;&lt; <span class="stringliteral">&quot;, &#39;p&#39;: &quot;</span> &lt;&lt; std::to_string(p) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot;}},\n&quot;</span>;</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160; </div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160; </div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>().size(); i++){</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        <span class="keywordtype">float</span> x = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getX();</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;        <span class="keywordtype">float</span> y = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getY();</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keywordtype">float</span> z = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <span class="keywordtype">float</span> qx = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getX();</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        <span class="keywordtype">float</span> qy = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getY();</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keywordtype">float</span> qz = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getZ();</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="keywordtype">float</span> qw = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getW();</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160; </div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        <span class="keywordtype">float</span> length = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getX();</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        <span class="keywordtype">float</span> width = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getY();</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        <span class="keywordtype">float</span> height = A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getZ();</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160; </div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;name() &lt;&lt; <span class="stringliteral">&quot;&#39; , &#39;pos&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(z - 0.25*height) &lt;&lt; <span class="stringliteral">&quot; } , &#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(length) &lt;&lt; <span class="stringliteral">&quot; , &#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(width) &lt;&lt; <span class="stringliteral">&quot; , &#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(height) &lt;&lt; <span class="stringliteral">&quot; } , &#39;orientation&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(qx) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(qy) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(qz) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span>&lt;&lt; std::to_string(qw) &lt;&lt; <span class="stringliteral">&quot; } , &#39;color&#39;: { &#39;r&#39;: 0.15 , &#39;g&#39;: 0.15 , &#39;b&#39;: 0.15 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    }</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160; </div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    </div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>().size(); i++){</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        <span class="keywordtype">float</span> x = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getX();</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;        <span class="keywordtype">float</span> y = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getY();</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        <span class="keywordtype">float</span> z = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getOrigin().getZ();</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;        <span class="keywordtype">float</span> qx = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getX();</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;        <span class="keywordtype">float</span> qy = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getY();</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;        <span class="keywordtype">float</span> qz = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getZ();</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        <span class="keywordtype">float</span> qw = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf().getRotation().getW();</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160; </div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;        <span class="keywordtype">float</span> length = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getX();</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keywordtype">float</span> width = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getY();</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        <span class="keywordtype">float</span> height = B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;size().getZ();</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160; </div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160; </div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;name() &lt;&lt; <span class="stringliteral">&quot;&#39;,  &#39;pos&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(z - 0.25*height) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(length) &lt;&lt; <span class="stringliteral">&quot;,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(width) &lt;&lt; <span class="stringliteral">&quot;,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(height) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(qx) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span>&lt;&lt; std::to_string(qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;    }</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    tf2::Transform tf_arm =  A-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>() * A-&gt;<a class="code" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">root_tf</a>();</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    <span class="keywordtype">float</span> arm_x = tf_arm.getOrigin().getX();</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="keywordtype">float</span> arm_y = tf_arm.getOrigin().getY();</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    <span class="keywordtype">float</span> arm_z = tf_arm.getOrigin().getZ();</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    <span class="keywordtype">float</span> arm_qx = tf_arm.getRotation().getX();</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    <span class="keywordtype">float</span> arm_qy = tf_arm.getRotation().getY();</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    <span class="keywordtype">float</span> arm_qz = tf_arm.getRotation().getZ();</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    <span class="keywordtype">float</span> arm_qw = tf_arm.getRotation().getW();</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160; </div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;arm&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;&#39;,&#39;type&#39;: &#39;ARM&#39;,&#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: 0.89 },&#39;size&#39;: { },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qx) &lt;&lt;<span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 1.00,&#39;g&#39;: 1.00,&#39;b&#39;: 1.00 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160; </div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;    tf_arm =  B-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>() * B-&gt;<a class="code" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">root_tf</a>();</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    arm_x = tf_arm.getOrigin().getX();</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    arm_y = tf_arm.getOrigin().getY();</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    arm_z = tf_arm.getOrigin().getZ();</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    arm_qx = tf_arm.getRotation().getX();</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;    arm_qy = tf_arm.getRotation().getY();</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    arm_qz = tf_arm.getRotation().getZ();</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    arm_qw = tf_arm.getRotation().getW();</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160; </div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;arm&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;&#39;,&#39;type&#39;: &#39;ARM&#39;,&#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: 0.89 },&#39;size&#39;: { },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qx) &lt;&lt;<span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 1.00,&#39;g&#39;: 1.00,&#39;b&#39;: 1.00 } } \n&quot;</span>;</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160; </div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;]}&quot;</span>;</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160; </div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    o &lt;&lt; ss.str();</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    o.close();</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    </div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;}</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160; </div>
+<div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">  422</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator::build_wings</a>(std::bitset&lt;3&gt;&amp; wing, <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keyword">auto</span> ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classCeti__robot.html">Ceti_robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot].get());</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    std::bitset&lt;3&gt; result = ceti-&gt;<a class="code" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">observer_mask</a>() &amp; wing;</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    </div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;    <span class="keywordflow">for</span> (std::size_t i = 0; i &lt; result.size(); i++){</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;        <span class="keywordflow">if</span> (result[i]){</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;            ceti-&gt;register_observers(std::move(<a class="code" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">wings_</a>[robot][i]));</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;        }</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    }</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160; </div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; ceti-&gt;observers().size(); i++){</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;        <span class="keyword">auto</span> wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRviz__panel.html">Rviz_panel</a>*<span class="keyword">&gt;</span>(ceti-&gt;observers()[i].get());</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;        wrd-&gt;<a class="code" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">marker</a>().action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;        ma.markers.push_back(wrd-&gt;marker());</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    }</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;}</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160; </div>
+<div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">  441</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">Base_calculation_mediator::publish</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* ar){</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;    marker.ns = ar-&gt;<a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>();</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    marker.id = 1;</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;    marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;    marker.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;    marker.pose.position.x = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    marker.pose.position.y = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    marker.pose.position.z = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    marker.pose.orientation.x = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;    marker.pose.orientation.y = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    marker.pose.orientation.z = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    marker.pose.orientation.w = ar-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;    marker.scale.x = ar-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getX();</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    marker.scale.y = ar-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getY();</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    marker.scale.z = ar-&gt;<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>().getZ();</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    marker.color.r = 1.0;</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    marker.color.g = 1.0;</div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;    marker.color.b = 1.0;</div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    marker.color.a = 1.0;</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; ar-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>().size(); i++){</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;        <span class="keyword">auto</span> wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRviz__panel.html">Rviz_panel</a>*<span class="keyword">&gt;</span>(ar-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i].get());</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        ma.markers.push_back(wrd-&gt;marker());</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;    }</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    </div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    <span class="comment">//pub_-&gt;publish(ma);</span></div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a1e710053c31cd1f4da64b45a11c7b660"><div class="ttname"><a href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">Base_calculation_mediator::write_file</a></div><div class="ttdeci">void write_file(Ceti_robot *A, Ceti_robot *B)</div><div class="ttdoc">Writes result file.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00299">base_calculation_mediator.cpp:299</a></div></div>
+<div class="ttc" id="aclassWing__reader_html"><div class="ttname"><a href="classWing__reader.html">Wing_reader</a></div><div class="ttdoc">Wing reader.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00014">wing_reader.h:14</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a5419d9798ac36cd945706721aa542278"><div class="ttname"><a href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">Base_calculation_mediator::pub_</a></div><div class="ttdeci">std::unique_ptr&lt; ros::Publisher &gt; pub_</div><div class="ttdoc">Publisher sharing visualization messages of the scene.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00024">base_calculation_mediator.h:24</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html"><div class="ttname"><a href="classRviz__panel.html">Rviz_panel</a></div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00010">rviz_panel.h:10</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a60528a5a7c83e0b15d9fee091b00e5b3"><div class="ttname"><a href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00043">ceti_robot.h:43</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_aafdcb4ce7d655b291170818c43162aa7"><div class="ttname"><a href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00044">ceti_robot.h:44</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a4ad187750675fbe7ba8ded55f2c0e3b7"><div class="ttname"><a href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">Ceti_robot::access_fields</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &amp; access_fields()</div><div class="ttdoc">Get access fields.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00059">ceti_robot.h:59</a></div></div>
+<div class="ttc" id="abase__calculation__mediator_8h_html"><div class="ttname"><a href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_af0e5f7417926e50ccb607c6612170687"><div class="ttname"><a href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot::in_collision</a></div><div class="ttdeci">bool in_collision(Ceti_robot *R)</div><div class="ttdoc">Collsion calculation.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00118">ceti_robot.cpp:118</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a3fc38aa682c47686159c0c67b7685fd7"><div class="ttname"><a href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">Base_calculation_mediator::set_panel</a></div><div class="ttdeci">void set_panel()</div><div class="ttdoc">Sets panels for robots.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00028">base_calculation_mediator.cpp:28</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a25e0b0dc5a154ad28d68f58500234d56"><div class="ttname"><a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">Abstract_mediator::task_space_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Ts_reader &gt; task_space_reader_</div><div class="ttdoc">Task_space reader which provides drop off positions.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00036">mediator/abstract_mediator.h:36</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_aff019cc13f25228abaf99b4a3fe72c38"><div class="ttname"><a href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</div><div class="ttdoc">Resets wings of a robot.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00422">base_calculation_mediator.cpp:422</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad4565f4b98c689289ddda9e7507736ae"><div class="ttname"><a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator::dirname_</a></div><div class="ttdeci">std::string dirname_</div><div class="ttdoc">Dirname of the reference protobuff.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00041">impl/abstract_mediator.h:41</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_af175bafdf327cc397ce1c9f42913c83a"><div class="ttname"><a href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdoc">Mediator implementation.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00099">base_calculation_mediator.cpp:99</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a8274031d01b4648815a25e9e545178c5"><div class="ttname"><a href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">Base_calculation_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &gt; wings_</div><div class="ttdoc">Possible panels per robot.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00030">base_calculation_mediator.h:30</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_ac2665ca36d02e328703514b188a07cfc"><div class="ttname"><a href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">Rviz_panel::marker</a></div><div class="ttdeci">visualization_msgs::Marker &amp; marker()</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00018">rviz_panel.h:18</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a6804ea3a11a66faf3bcf0429fd016d06"><div class="ttname"><a href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot) override</div><div class="ttdoc">Robot Connector implementation.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00022">base_calculation_mediator.cpp:22</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a6c5b26e596ed3c7fb4d226fa10183c51"><div class="ttname"><a href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">Base_calculation_mediator::generate_grounds</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_grounds(const tf2::Vector3 origin, const float diameter, float resolution)</div><div class="ttdoc">Ground generator.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00009">base_calculation_mediator.cpp:9</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a62cee1d422407a72223fcee53dbba5ba"><div class="ttname"><a href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">Base_calculation_mediator::publish</a></div><div class="ttdeci">void publish(Ceti_robot *r)</div><div class="ttdoc">Marker publishing methode.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00441">base_calculation_mediator.cpp:441</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a948403a8fba6220b86d2cda6cb74a326"><div class="ttname"><a href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">Ceti_robot::observers</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &amp; observers()</div><div class="ttdoc">Get observers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00053">ceti_robot.h:53</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_aa03bb145649933b2b362dfc8966f63c8"><div class="ttname"><a href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">Base_calculation_mediator::approximation</a></div><div class="ttdeci">void approximation(Ceti_robot *robot)</div><div class="ttdoc">Approximates other robots to fit in the workspace.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00218">base_calculation_mediator.cpp:218</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a2f29ef22d330020bf276cb709c8c8238"><div class="ttname"><a href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdoc">check_collision</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00045">base_calculation_mediator.cpp:45</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a008b22e99593f2fcbff3c6e26ae5ddbe"><div class="ttname"><a href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">Base_calculation_mediator::grounds_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; grounds_</div><div class="ttdoc">Possible ground positions per robots.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00029">base_calculation_mediator.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a78a9e79c0a97238c7d76ec1a3cc7349c"><div class="ttname"><a href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">Abstract_mediator::objects_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; objects_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00036">impl/abstract_mediator.h:36</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html"><div class="ttname"><a href="classCeti__robot.html">Ceti_robot</a></div><div class="ttdoc">Concrete Ceti-Robot.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00022">ceti_robot.h:22</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_afeb11427714da34b8203de2d094dd536"><div class="ttname"><a href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">Ceti_robot::observer_mask</a></div><div class="ttdeci">std::bitset&lt; 3 &gt; observer_mask()</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00117">ceti_robot.h:117</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_acf5ce9f5f854708b8b2a7008d75d0330"><div class="ttname"><a href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator::Base_calculation_mediator</a></div><div class="ttdeci">Base_calculation_mediator(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Base_calculation_mediator constructor.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00003">base_calculation_mediator.cpp:3</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a55975e58dfc863db246224217367c645"><div class="ttname"><a href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">Base_calculation_mediator::calculate</a></div><div class="ttdeci">void calculate(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</div><div class="ttdoc">Ground position calculator.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00140">base_calculation_mediator.cpp:140</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ac5776cb1039f39138f46c3a13799ee3b"><div class="ttname"><a href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">Ceti_robot::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00042">ceti_robot.h:42</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a4c9612f7a87974aa64622fd4acd8123e"><div class="ttname"><a href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">Ceti_robot::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00045">ceti_robot.h:45</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></div><div class="ttdeci">wing_config</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00014">impl/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html"><div class="ttname"><a href="classRobot__reader.html">Robot_reader</a></div><div class="ttdoc">Robot reader.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00015">robot_reader.h:15</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__calculation__mediator_8h.html b/doc/html/base__calculation__mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..704d213fac9a66ce51b2b5920c3126eb5580a07d
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h.html
@@ -0,0 +1,112 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_calculation_mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">base_calculation_mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="ceti__robot_8h_source.html">robot/ceti_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="rviz__panel_8h_source.html">robot_element/observers/rviz_panel.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="log__decorator_8h_source.html">robot_element/decorators/log_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for base_calculation_mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__calculation__mediator_8h__incl.png" border="0" usemap="#base__calculation__mediator_8h" alt=""/></div>
+<map name="base__calculation__mediator_8h" id="base__calculation__mediator_8h">
+<area shape="rect" title=" " alt="" coords="2953,5,3163,32"/>
+<area shape="rect" title=" " alt="" coords="1051,437,1129,464"/>
+<area shape="rect" title=" " alt="" coords="3391,355,3504,382"/>
+<area shape="rect" title=" " alt="" coords="4172,355,4304,382"/>
+<area shape="rect" title=" " alt="" coords="4328,355,4401,382"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2950,80,3166,107"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="3145,259,3312,285"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1684,162,1821,189"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="3473,162,3633,189"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="220,155,405,196"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="5,155,196,196"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="3674,162,3837,189"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="2391,155,2578,196"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1131,348,1305,389"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="3307,162,3449,189"/>
+<area shape="rect" title=" " alt="" coords="2654,162,2806,189"/>
+<area shape="rect" title=" " alt="" coords="2831,162,2963,189"/>
+<area shape="rect" title=" " alt="" coords="2987,162,3129,189"/>
+<area shape="rect" title=" " alt="" coords="2667,251,2854,293"/>
+<area shape="rect" title=" " alt="" coords="1309,244,1501,300"/>
+<area shape="rect" title=" " alt="" coords="1525,251,1743,293"/>
+<area shape="rect" title=" " alt="" coords="1768,251,1975,293"/>
+<area shape="rect" title=" " alt="" coords="1999,244,2155,300"/>
+<area shape="rect" title=" " alt="" coords="2179,251,2353,293"/>
+<area shape="rect" title=" " alt="" coords="2377,251,2593,293"/>
+<area shape="rect" title=" " alt="" coords="2879,259,3069,285"/>
+<area shape="rect" title=" " alt="" coords="3253,437,3452,464"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="521,244,712,300"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="736,251,921,293"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="997,251,1183,293"/>
+<area shape="rect" title=" " alt="" coords="3579,355,3729,382"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="3793,251,3963,293"/>
+<area shape="rect" title=" " alt="" coords="3803,355,3862,382"/>
+<area shape="rect" title=" " alt="" coords="3886,348,4046,389"/>
+<area shape="rect" title=" " alt="" coords="198,251,345,293"/>
+<area shape="rect" title=" " alt="" coords="27,251,174,293"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__calculation__mediator_8h__dep__incl.png" border="0" usemap="#base__calculation__mediator_8hdep" alt=""/></div>
+<map name="base__calculation__mediator_8hdep" id="base__calculation__mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="123,5,333,32"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,87,229,114"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,80,426,121"/>
+</map>
+</div>
+</div>
+<p><a href="base__calculation__mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concrete <a class="el" href="classMediator.html">Mediator</a>.  <a href="classBase__calculation__mediator.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__calculation__mediator_8h__dep__incl.map b/doc/html/base__calculation__mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b2b09e9c0e3a9da35aacb77e04f81ec2a8e2a11d
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="base_calculation_mediator.h" name="base_calculation_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="123,5,333,32"/>
+<area shape="rect" id="node2" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,87,229,114"/>
+<area shape="rect" id="node3" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,80,426,121"/>
+</map>
diff --git a/doc/html/base__calculation__mediator_8h__dep__incl.md5 b/doc/html/base__calculation__mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..2e46b738cc0f46b5655ac2b248b41d4e15cb830c
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+6240fbcf406393fb66c2b0dd0b39e806
\ No newline at end of file
diff --git a/doc/html/base__calculation__mediator_8h__dep__incl.png b/doc/html/base__calculation__mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..40fb6de66b7ca93608c0209317bb56a93babd5d9
Binary files /dev/null and b/doc/html/base__calculation__mediator_8h__dep__incl.png differ
diff --git a/doc/html/base__calculation__mediator_8h__incl.map b/doc/html/base__calculation__mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..16fff756f27c6de312f635953a0dbaef86f6ace9
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h__incl.map
@@ -0,0 +1,38 @@
+<map id="base_calculation_mediator.h" name="base_calculation_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="2953,5,3163,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1051,437,1129,464"/>
+<area shape="rect" id="node3" title=" " alt="" coords="3391,355,3504,382"/>
+<area shape="rect" id="node4" title=" " alt="" coords="4172,355,4304,382"/>
+<area shape="rect" id="node5" title=" " alt="" coords="4328,355,4401,382"/>
+<area shape="rect" id="node6" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2950,80,3166,107"/>
+<area shape="rect" id="node8" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="3145,259,3312,285"/>
+<area shape="rect" id="node19" href="$ceti__robot_8h.html" title=" " alt="" coords="1684,162,1821,189"/>
+<area shape="rect" id="node23" href="$wing__reader_8h.html" title=" " alt="" coords="3473,162,3633,189"/>
+<area shape="rect" id="node32" href="$rviz__panel_8h.html" title=" " alt="" coords="220,155,405,196"/>
+<area shape="rect" id="node34" href="$log__decorator_8h.html" title=" " alt="" coords="5,155,196,196"/>
+<area shape="rect" id="node36" href="$robot__reader_8h.html" title=" " alt="" coords="3674,162,3837,189"/>
+<area shape="rect" id="node7" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="2391,155,2578,196"/>
+<area shape="rect" id="node10" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1131,348,1305,389"/>
+<area shape="rect" id="node28" href="$ts__reader_8h.html" title=" " alt="" coords="3307,162,3449,189"/>
+<area shape="rect" id="node29" title=" " alt="" coords="2654,162,2806,189"/>
+<area shape="rect" id="node30" title=" " alt="" coords="2831,162,2963,189"/>
+<area shape="rect" id="node31" title=" " alt="" coords="2987,162,3129,189"/>
+<area shape="rect" id="node11" title=" " alt="" coords="2667,251,2854,293"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1309,244,1501,300"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1525,251,1743,293"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1768,251,1975,293"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1999,244,2155,300"/>
+<area shape="rect" id="node16" title=" " alt="" coords="2179,251,2353,293"/>
+<area shape="rect" id="node17" title=" " alt="" coords="2377,251,2593,293"/>
+<area shape="rect" id="node18" title=" " alt="" coords="2879,259,3069,285"/>
+<area shape="rect" id="node9" title=" " alt="" coords="3253,437,3452,464"/>
+<area shape="rect" id="node20" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="521,244,712,300"/>
+<area shape="rect" id="node21" href="$panel_8h.html" title=" " alt="" coords="736,251,921,293"/>
+<area shape="rect" id="node22" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="997,251,1183,293"/>
+<area shape="rect" id="node24" title=" " alt="" coords="3579,355,3729,382"/>
+<area shape="rect" id="node25" href="$abstract__param__reader_8h.html" title=" " alt="" coords="3793,251,3963,293"/>
+<area shape="rect" id="node26" title=" " alt="" coords="3803,355,3862,382"/>
+<area shape="rect" id="node27" title=" " alt="" coords="3886,348,4046,389"/>
+<area shape="rect" id="node33" title=" " alt="" coords="198,251,345,293"/>
+<area shape="rect" id="node35" title=" " alt="" coords="27,251,174,293"/>
+</map>
diff --git a/doc/html/base__calculation__mediator_8h__incl.md5 b/doc/html/base__calculation__mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c1262e34c415ccdb1c5340ad4c82822f1a23b1fc
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h__incl.md5
@@ -0,0 +1 @@
+2bbb4cae51e3419bbaa9aaa74959a29a
\ No newline at end of file
diff --git a/doc/html/base__calculation__mediator_8h__incl.png b/doc/html/base__calculation__mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f23587f9d188d977a5348a2fb7b7306f4d2bd727
Binary files /dev/null and b/doc/html/base__calculation__mediator_8h__incl.png differ
diff --git a/doc/html/base__calculation__mediator_8h_source.html b/doc/html/base__calculation__mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..36df134872e7a89c8c26ecdeace26f06c630ea36
--- /dev/null
+++ b/doc/html/base__calculation__mediator_8h_source.html
@@ -0,0 +1,141 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_calculation_mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_calculation_mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="base__calculation__mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef BASE_CALCULATION_MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define BASE_CALCULATION_MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ceti__robot_8h.html">robot/ceti_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rviz__panel_8h.html">robot_element/observers/rviz_panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="log__decorator_8h.html">robot_element/decorators/log_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html">   22</a></span>&#160;<span class="keyword">class </span><a class="code" href="classBase__calculation__mediator.html">Base_calculation_mediator</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>{</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">   24</a></span>&#160;    std::unique_ptr&lt;ros::Publisher&gt; <a class="code" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a>; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">   25</a></span>&#160;    std::unique_ptr&lt;Wing_reader&gt; <a class="code" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">wing_reader_</a>; </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">   26</a></span>&#160;    std::unique_ptr&lt;Robot_reader&gt; <a class="code" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">robot_reader_</a>; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">   29</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">grounds_</a>; </div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">   30</a></span>&#160;    std::vector&lt;std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt;&gt; <a class="code" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">wings_</a>; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">generate_grounds</a>(<span class="keyword">const</span> tf2::Vector3 origin, <span class="keyword">const</span> <span class="keywordtype">float</span> diameter, <span class="keywordtype">float</span> resolution);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">   54</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classWing__reader.html">Wing_reader</a>* <a class="code" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">wing_reader</a>() {<span class="keywordflow">return</span> <a class="code" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">wing_reader_</a>.get();}</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">   60</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classRobot__reader.html">Robot_reader</a>* <a class="code" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">robot_reader</a>() {<span class="keywordflow">return</span> <a class="code" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">robot_reader_</a>.get();}</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">approximation</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* robot);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">write_file</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* A, <a class="code" href="classCeti__robot.html">Ceti_robot</a>* B);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">publish</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* r);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">setup_rviz</a>();</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">calculate</a>(std::vector&lt;tf2::Transform&gt;&amp; ground_per_robot);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">set_panel</a>();</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">check_collision</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">mediate</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">build_wings</a>(std::bitset&lt;3&gt;&amp; <a class="code" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>, <span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">connect_robots</a>(std::unique_ptr&lt;Abstract_robot_decorator&gt; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;};</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassBase__calculation__mediator_html_a1e5a579ea6a516ec8537b4b3d506e4ae"><div class="ttname"><a href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">Base_calculation_mediator::setup_rviz</a></div><div class="ttdeci">void setup_rviz()</div><div class="ttdoc">Rviz setup methode.</div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a3a04eb51e61a15179088786b9555e000"><div class="ttname"><a href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">Base_calculation_mediator::robot_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Robot_reader &gt; robot_reader_</div><div class="ttdoc">Robot_reader which collects robot poses.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00026">base_calculation_mediator.h:26</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a1e710053c31cd1f4da64b45a11c7b660"><div class="ttname"><a href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">Base_calculation_mediator::write_file</a></div><div class="ttdeci">void write_file(Ceti_robot *A, Ceti_robot *B)</div><div class="ttdoc">Writes result file.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00299">base_calculation_mediator.cpp:299</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a7d366c17687d6e3e4d3bc27c888ee5f5"><div class="ttname"><a href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">Base_calculation_mediator::wing_reader</a></div><div class="ttdeci">Wing_reader * wing_reader()</div><div class="ttdoc">Get Wing_reader.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00054">base_calculation_mediator.h:54</a></div></div>
+<div class="ttc" id="aclassWing__reader_html"><div class="ttname"><a href="classWing__reader.html">Wing_reader</a></div><div class="ttdoc">Wing reader.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00014">wing_reader.h:14</a></div></div>
+<div class="ttc" id="alog__decorator_8h_html"><div class="ttname"><a href="log__decorator_8h.html">log_decorator.h</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a5419d9798ac36cd945706721aa542278"><div class="ttname"><a href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">Base_calculation_mediator::pub_</a></div><div class="ttdeci">std::unique_ptr&lt; ros::Publisher &gt; pub_</div><div class="ttdoc">Publisher sharing visualization messages of the scene.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00024">base_calculation_mediator.h:24</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_ae1c0060fbd229bb5c7c8229e82200fc0"><div class="ttname"><a href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">Base_calculation_mediator::wing_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Wing_reader &gt; wing_reader_</div><div class="ttdoc">Wing_reader which collects panel information of robots.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00025">base_calculation_mediator.h:25</a></div></div>
+<div class="ttc" id="aceti__robot_8h_html"><div class="ttname"><a href="ceti__robot_8h.html">ceti_robot.h</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html"><div class="ttname"><a href="classBase__calculation__mediator.html">Base_calculation_mediator</a></div><div class="ttdoc">Concrete Mediator.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00022">base_calculation_mediator.h:22</a></div></div>
+<div class="ttc" id="amediator_2abstract__mediator_8h_html"><div class="ttname"><a href="mediator_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a3fc38aa682c47686159c0c67b7685fd7"><div class="ttname"><a href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">Base_calculation_mediator::set_panel</a></div><div class="ttdeci">void set_panel()</div><div class="ttdoc">Sets panels for robots.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00028">base_calculation_mediator.cpp:28</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_aff019cc13f25228abaf99b4a3fe72c38"><div class="ttname"><a href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</div><div class="ttdoc">Resets wings of a robot.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00422">base_calculation_mediator.cpp:422</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_af175bafdf327cc397ce1c9f42913c83a"><div class="ttname"><a href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdoc">Mediator implementation.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00099">base_calculation_mediator.cpp:99</a></div></div>
+<div class="ttc" id="arviz__panel_8h_html"><div class="ttname"><a href="rviz__panel_8h.html">rviz_panel.h</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a8274031d01b4648815a25e9e545178c5"><div class="ttname"><a href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">Base_calculation_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &gt; wings_</div><div class="ttdoc">Possible panels per robot.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00030">base_calculation_mediator.h:30</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a6804ea3a11a66faf3bcf0429fd016d06"><div class="ttname"><a href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot) override</div><div class="ttdoc">Robot Connector implementation.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00022">base_calculation_mediator.cpp:22</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a6c5b26e596ed3c7fb4d226fa10183c51"><div class="ttname"><a href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">Base_calculation_mediator::generate_grounds</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_grounds(const tf2::Vector3 origin, const float diameter, float resolution)</div><div class="ttdoc">Ground generator.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00009">base_calculation_mediator.cpp:9</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a62cee1d422407a72223fcee53dbba5ba"><div class="ttname"><a href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">Base_calculation_mediator::publish</a></div><div class="ttdeci">void publish(Ceti_robot *r)</div><div class="ttdoc">Marker publishing methode.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00441">base_calculation_mediator.cpp:441</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_aa03bb145649933b2b362dfc8966f63c8"><div class="ttname"><a href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">Base_calculation_mediator::approximation</a></div><div class="ttdeci">void approximation(Ceti_robot *robot)</div><div class="ttdoc">Approximates other robots to fit in the workspace.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00218">base_calculation_mediator.cpp:218</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a2f29ef22d330020bf276cb709c8c8238"><div class="ttname"><a href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdoc">check_collision</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00045">base_calculation_mediator.cpp:45</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9838c41eeb97aef668cd7213f0e2e9a6"><div class="ttname"><a href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">Abstract_mediator::wings</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00052">impl/abstract_mediator.h:52</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a008b22e99593f2fcbff3c6e26ae5ddbe"><div class="ttname"><a href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">Base_calculation_mediator::grounds_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; grounds_</div><div class="ttdoc">Possible ground positions per robots.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00029">base_calculation_mediator.h:29</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html"><div class="ttname"><a href="classCeti__robot.html">Ceti_robot</a></div><div class="ttdoc">Concrete Ceti-Robot.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00022">ceti_robot.h:22</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_acf5ce9f5f854708b8b2a7008d75d0330"><div class="ttname"><a href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator::Base_calculation_mediator</a></div><div class="ttdeci">Base_calculation_mediator(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Base_calculation_mediator constructor.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00003">base_calculation_mediator.cpp:3</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a55975e58dfc863db246224217367c645"><div class="ttname"><a href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">Base_calculation_mediator::calculate</a></div><div class="ttdeci">void calculate(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</div><div class="ttdoc">Ground position calculator.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8cpp_source.html#l00140">base_calculation_mediator.cpp:140</a></div></div>
+<div class="ttc" id="aclassBase__calculation__mediator_html_a00167697941fa249b15bc322e9ecb356"><div class="ttname"><a href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">Base_calculation_mediator::robot_reader</a></div><div class="ttdeci">Robot_reader * robot_reader()</div><div class="ttdoc">Get Robot_reader.</div><div class="ttdef"><b>Definition:</b> <a href="base__calculation__mediator_8h_source.html#l00060">base_calculation_mediator.h:60</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html"><div class="ttname"><a href="classRobot__reader.html">Robot_reader</a></div><div class="ttdoc">Robot reader.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00015">robot_reader.h:15</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__routine_8cpp.html b/doc/html/base__routine_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c2bb5f10e219e4acc1bfeb85402456ae2e2199e
--- /dev/null
+++ b/doc/html/base__routine_8cpp.html
@@ -0,0 +1,150 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_routine.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">base_routine.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__strategy_8h_source.html">impl/abstract_strategy.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="mediator_8h_source.html">impl/mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__rviz__decorator_8h_source.html">impl/wing_rviz_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="field__rviz__decorator_8h_source.html">impl/field_rviz_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2field_8h_source.html">impl/field.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="map__loader_8h_source.html">impl/map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="base__by__rotation_8h_source.html">impl/base_by_rotation.h</a>&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;filesystem&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/grasp_planner.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for base_routine.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="base__routine_8cpp__incl.png" border="0" usemap="#base__routine_8cpp" alt=""/></div>
+<map name="base__routine_8cpp" id="base__routine_8cpp">
+<area shape="rect" title=" " alt="" coords="2984,5,3117,32"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="2962,333,3166,360"/>
+<area shape="rect" title=" " alt="" coords="3900,430,4049,457"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1974,430,2135,457"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="3001,519,3180,546"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="663,512,812,553"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="398,423,562,464"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="2577,169,2764,196"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1151,244,1252,271"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="587,430,685,457"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="317,333,515,360"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="5,430,101,457"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="3484,244,3644,271"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="3649,326,3820,367"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="2633,87,2759,114"/>
+<area shape="rect" href="field__rviz__decorator_8h.html" title=" " alt="" coords="97,333,293,360"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="3215,244,3359,271"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="2961,244,3140,271"/>
+<area shape="rect" title=" " alt="" coords="3769,87,3860,114"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="3719,244,3881,271"/>
+<area shape="rect" title=" " alt="" coords="3935,80,4126,121"/>
+<area shape="rect" title=" " alt="" coords="4150,80,4341,121"/>
+<area shape="rect" title=" " alt="" coords="4365,80,4555,121"/>
+<area shape="rect" title=" " alt="" coords="4579,80,4738,121"/>
+<area shape="rect" title=" " alt="" coords="2015,609,2094,635"/>
+<area shape="rect" title=" " alt="" coords="2991,609,3190,635"/>
+<area shape="rect" title=" " alt="" coords="2211,430,2363,457"/>
+<area shape="rect" title=" " alt="" coords="2387,430,2519,457"/>
+<area shape="rect" title=" " alt="" coords="2543,430,2686,457"/>
+<area shape="rect" title=" " alt="" coords="3343,430,3457,457"/>
+<area shape="rect" title=" " alt="" coords="2710,430,2842,457"/>
+<area shape="rect" title=" " alt="" coords="2866,430,2939,457"/>
+<area shape="rect" title=" " alt="" coords="664,601,811,643"/>
+<area shape="rect" title=" " alt="" coords="1844,319,2036,375"/>
+<area shape="rect" title=" " alt="" coords="2060,326,2279,367"/>
+<area shape="rect" title=" " alt="" coords="995,326,1202,367"/>
+<area shape="rect" title=" " alt="" coords="1226,319,1382,375"/>
+<area shape="rect" title=" " alt="" coords="1407,326,1580,367"/>
+<area shape="rect" title=" " alt="" coords="1604,326,1820,367"/>
+<area shape="rect" title=" " alt="" coords="176,423,323,464"/>
+<area shape="rect" title=" " alt="" coords="3532,430,3591,457"/>
+<area shape="rect" title=" " alt="" coords="3665,423,3825,464"/>
+</map>
+</div>
+</div>
+<p><a href="base__routine_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="base__routine_8cpp_source.html#l00030">30</a> of file <a class="el" href="base__routine_8cpp_source.html">base_routine.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/base__routine_8cpp__incl.map b/doc/html/base__routine_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..0a05330fc89b78c08932401a1a2436f32304bd67
--- /dev/null
+++ b/doc/html/base__routine_8cpp__incl.map
@@ -0,0 +1,44 @@
+<map id="base_routine.cpp" name="base_routine.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2984,5,3117,32"/>
+<area shape="rect" id="node2" href="$abstract__map__loader_8h.html" title=" " alt="" coords="2962,333,3166,360"/>
+<area shape="rect" id="node4" title=" " alt="" coords="3900,430,4049,457"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1974,430,2135,457"/>
+<area shape="rect" id="node13" href="$abstract__strategy_8h.html" title=" " alt="" coords="3001,519,3180,546"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="663,512,812,553"/>
+<area shape="rect" id="node16" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="398,423,562,464"/>
+<area shape="rect" id="node17" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="2577,169,2764,196"/>
+<area shape="rect" id="node18" href="$robot_8h.html" title=" " alt="" coords="1151,244,1252,271"/>
+<area shape="rect" id="node19" href="$wing_8h.html" title=" " alt="" coords="587,430,685,457"/>
+<area shape="rect" id="node20" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="317,333,515,360"/>
+<area shape="rect" id="node22" href="$impl_2field_8h.html" title=" " alt="" coords="5,430,101,457"/>
+<area shape="rect" id="node29" href="$wing__reader_8h.html" title=" " alt="" coords="3484,244,3644,271"/>
+<area shape="rect" id="node30" href="$abstract__param__reader_8h.html" title=" " alt="" coords="3649,326,3820,367"/>
+<area shape="rect" id="node33" href="$mediator_8h.html" title=" " alt="" coords="2633,87,2759,114"/>
+<area shape="rect" id="node34" href="$field__rviz__decorator_8h.html" title=" " alt="" coords="97,333,293,360"/>
+<area shape="rect" id="node35" href="$map__loader_8h.html" title=" " alt="" coords="3215,244,3359,271"/>
+<area shape="rect" id="node36" href="$base__by__rotation_8h.html" title=" " alt="" coords="2961,244,3140,271"/>
+<area shape="rect" id="node37" title=" " alt="" coords="3769,87,3860,114"/>
+<area shape="rect" id="node38" href="$robot__reader_8h.html" title=" " alt="" coords="3719,244,3881,271"/>
+<area shape="rect" id="node39" title=" " alt="" coords="3935,80,4126,121"/>
+<area shape="rect" id="node40" title=" " alt="" coords="4150,80,4341,121"/>
+<area shape="rect" id="node41" title=" " alt="" coords="4365,80,4555,121"/>
+<area shape="rect" id="node42" title=" " alt="" coords="4579,80,4738,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="2015,609,2094,635"/>
+<area shape="rect" id="node5" title=" " alt="" coords="2991,609,3190,635"/>
+<area shape="rect" id="node6" title=" " alt="" coords="2211,430,2363,457"/>
+<area shape="rect" id="node7" title=" " alt="" coords="2387,430,2519,457"/>
+<area shape="rect" id="node8" title=" " alt="" coords="2543,430,2686,457"/>
+<area shape="rect" id="node9" title=" " alt="" coords="3343,430,3457,457"/>
+<area shape="rect" id="node10" title=" " alt="" coords="2710,430,2842,457"/>
+<area shape="rect" id="node11" title=" " alt="" coords="2866,430,2939,457"/>
+<area shape="rect" id="node15" title=" " alt="" coords="664,601,811,643"/>
+<area shape="rect" id="node23" title=" " alt="" coords="1844,319,2036,375"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2060,326,2279,367"/>
+<area shape="rect" id="node25" title=" " alt="" coords="995,326,1202,367"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1226,319,1382,375"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1407,326,1580,367"/>
+<area shape="rect" id="node28" title=" " alt="" coords="1604,326,1820,367"/>
+<area shape="rect" id="node21" title=" " alt="" coords="176,423,323,464"/>
+<area shape="rect" id="node31" title=" " alt="" coords="3532,430,3591,457"/>
+<area shape="rect" id="node32" title=" " alt="" coords="3665,423,3825,464"/>
+</map>
diff --git a/doc/html/base__routine_8cpp__incl.md5 b/doc/html/base__routine_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..94b5104c119df7a56533a8dfb7a7acc88f89a519
--- /dev/null
+++ b/doc/html/base__routine_8cpp__incl.md5
@@ -0,0 +1 @@
+2a5c68153648908846e9b17de5f71bfa
\ No newline at end of file
diff --git a/doc/html/base__routine_8cpp__incl.png b/doc/html/base__routine_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..703e773567f3b4ae941cdd863e3c9268b7cc938d
Binary files /dev/null and b/doc/html/base__routine_8cpp__incl.png differ
diff --git a/doc/html/base__routine_8cpp_source.html b/doc/html/base__routine_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2890d21efd49271b82843e617162ad376e7eed53
--- /dev/null
+++ b/doc/html/base__routine_8cpp_source.html
@@ -0,0 +1,165 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_routine.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_routine.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="base__routine_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__strategy_8h.html">impl/abstract_strategy.h</a>&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="mediator_8h.html">impl/mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__rviz__decorator_8h.html">impl/wing_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="field__rviz__decorator_8h.html">impl/field_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2field_8h.html">impl/field.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__loader_8h.html">impl/map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="base__by__rotation_8h.html">impl/base_by_rotation.h</a>&quot;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;filesystem&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/grasp_planner.h&gt;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">   30</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv){</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;penis&quot;</span>);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    ros::init(argc, argv, <span class="stringliteral">&quot;base_routine&quot;</span>);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; n(<span class="keyword">new</span> ros::NodeHandle);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    XmlRpc::XmlRpcValue map, task, resources;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    n-&gt;getParam(<span class="stringliteral">&quot;/data&quot;</span>,map);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    n-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>,resources);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    n-&gt;getParam(<span class="stringliteral">&quot;/task/groups&quot;</span>,task);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    std::string filename;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    n-&gt;getParam(<span class="stringliteral">&quot;/resource_name&quot;</span>, filename);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordflow">if</span>(std::filesystem::exists(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/results/&quot;</span> +  filename)) std::filesystem::remove_all(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/results/&quot;</span> +  filename);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    std::filesystem::create_directory(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/results/&quot;</span> +  filename);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* map_loader = <span class="keyword">new</span> <a class="code" href="classMap__loader.html">Map_loader</a>(map, task);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="classAbstract__strategy.html">Abstract_strategy</a>* strategy = <span class="keyword">new</span> <a class="code" href="classBase__by__rotation.html">Base_by_rotation</a>();</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    map_loader-&gt;<a class="code" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a>(strategy);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; results = map_loader-&gt;<a class="code" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">base_calculation</a>();</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>* mediator = <span class="keyword">new</span> <a class="code" href="classMediator.html">Mediator</a>(map_loader-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>(), <span class="keyword">new</span> ros::Publisher(n-&gt;advertise&lt; visualization_msgs::MarkerArray &gt;(<span class="stringliteral">&quot;visualization_marker_array&quot;</span>, 1)));</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    mediator-&gt;<a class="code" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(results);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    mediator-&gt;<a class="code" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(filename);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    std::unique_ptr&lt;Robot_reader&gt; robot_reader(<span class="keyword">new</span> <a class="code" href="classRobot__reader.html">Robot_reader</a>(n));</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keyword">auto</span> rd = robot_reader-&gt;robot_data();</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; rd.size() ;i++) mediator-&gt;<a class="code" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a>(<span class="keyword">new</span> <a class="code" href="classRobot.html">Robot</a>(rd[i].name_, rd[i].pose_, rd[i].size_));</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">    std::unique_ptr&lt;Wing_reader&gt; wing_reader(new Wing_reader(n));</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">    auto wd = wing_reader-&gt;wing_data();</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">    for (int i = 0; i &lt; mediator-&gt;robots().size(); i++){</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">        for(object_data&amp; w : wd[i].first){</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">            w.pose_ = mediator-&gt;robots()[i]-&gt;tf().inverse() * w.pose_;</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">        mediator-&gt;robots()[i]-&gt;set_observer_mask(static_cast&lt;wing_config&gt;(wd[i].second));</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">    mediator-&gt;set_wings(wd);</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    mediator-&gt;<a class="code" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a>();</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="comment">//map_loader-&gt;write_task(robo);</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="comment">//free(rviz_right);</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">//free(rviz_mid);</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="comment">//free(rviz_left);</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    free(map_loader);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    free(strategy);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="comment">//free(robo);</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="comment">//free(robo2);</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a64323b190e965287422f7b840bc1b95f"><div class="ttname"><a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">Abstract_mediator::set_dirname</a></div><div class="ttdeci">void set_dirname(std::string &amp;dirn)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00057">impl/abstract_mediator.h:57</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassMediator_html"><div class="ttname"><a href="classMediator.html">Mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="mediator_8h_source.html#l00012">mediator.h:12</a></div></div>
+<div class="ttc" id="aimpl_2field_8h_html"><div class="ttname"><a href="impl_2field_8h.html">field.h</a></div></div>
+<div class="ttc" id="amediator_8h_html"><div class="ttname"><a href="mediator_8h.html">mediator.h</a></div></div>
+<div class="ttc" id="abase__routine_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="base__routine_8cpp_source.html#l00030">base_routine.cpp:30</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a9fdca9d4a86d66a712194e409d799eff"><div class="ttname"><a href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">Abstract_map_loader::base_calculation</a></div><div class="ttdeci">virtual std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation()=0</div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aa9772fe2bd594967b8f7b980db442ca5"><div class="ttname"><a href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader::task_grasps</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp; task_grasps()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00046">abstract_map_loader.h:46</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a3508478d51dcdf86ed8418006a4dd0d9"><div class="ttname"><a href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">Abstract_map_loader::set_strategy</a></div><div class="ttdeci">void set_strategy(Abstract_strategy *some_stratergy)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00038">abstract_map_loader.h:38</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="amap__loader_8h_html"><div class="ttname"><a href="map__loader_8h.html">map_loader.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__strategy_html"><div class="ttname"><a href="classAbstract__strategy.html">Abstract_strategy</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__strategy_8h_source.html#l00008">abstract_strategy.h:8</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_adcd1ada33f056dadda3dc17a6299b731"><div class="ttname"><a href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator::mediate</a></div><div class="ttdeci">virtual void mediate()=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0c102b5e272139492ab04ce0d4e43234"><div class="ttname"><a href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator::connect_robots</a></div><div class="ttdeci">virtual void connect_robots(Abstract_robot *robot)=0</div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassMap__loader_html"><div class="ttname"><a href="classMap__loader.html">Map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8h_source.html#l00010">map_loader.h:10</a></div></div>
+<div class="ttc" id="awing__rviz__decorator_8h_html"><div class="ttname"><a href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a45f051cc8b3816677c638f805e805838"><div class="ttname"><a href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">Abstract_mediator::set_result_vector</a></div><div class="ttdeci">void set_result_vector(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00051">impl/abstract_mediator.h:51</a></div></div>
+<div class="ttc" id="abase__by__rotation_8h_html"><div class="ttname"><a href="base__by__rotation_8h.html">base_by_rotation.h</a></div></div>
+<div class="ttc" id="afield__rviz__decorator_8h_html"><div class="ttname"><a href="field__rviz__decorator_8h.html">field_rviz_decorator.h</a></div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aclassBase__by__rotation_html"><div class="ttname"><a href="classBase__by__rotation.html">Base_by_rotation</a></div><div class="ttdef"><b>Definition:</b> <a href="base__by__rotation_8h_source.html#l00009">base_by_rotation.h:9</a></div></div>
+<div class="ttc" id="aabstract__strategy_8h_html"><div class="ttname"><a href="abstract__strategy_8h.html">abstract_strategy.h</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html"><div class="ttname"><a href="classRobot__reader.html">Robot_reader</a></div><div class="ttdoc">Robot reader.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00015">robot_reader.h:15</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/bc_s.png b/doc/html/bc_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2
Binary files /dev/null and b/doc/html/bc_s.png differ
diff --git a/doc/html/bdwn.png b/doc/html/bdwn.png
new file mode 100644
index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452
Binary files /dev/null and b/doc/html/bdwn.png differ
diff --git a/doc/html/cell__routine_8cpp.html b/doc/html/cell__routine_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..e51eff1521aba3547b7597e556e5cf5f6302b2af
--- /dev/null
+++ b/doc/html/cell__routine_8cpp.html
@@ -0,0 +1,155 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cell_routine.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">cell_routine.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="map__loader_8h_source.html">impl/map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__mediator_8h_source.html">impl/moveit_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__moveit__decorator_8h_source.html">impl/wing_moveit_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__robot_8h_source.html">impl/moveit_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="collision__helper_8h_source.html">impl/collision_helper.h</a>&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="cuboid__reader_8h_source.html">reader/cuboid_reader.h</a>&quot;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/grasp_planner.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for cell_routine.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="cell__routine_8cpp__incl.png" border="0" usemap="#cell__routine_8cpp" alt=""/></div>
+<map name="cell__routine_8cpp" id="cell__routine_8cpp">
+<area shape="rect" title=" " alt="" coords="1353,5,1479,32"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1201,363,1362,389"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="915,549,1119,575"/>
+<area shape="rect" title=" " alt="" coords="179,631,328,657"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1701,452,1851,493"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="813,459,957,486"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2899,355,3063,397"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="1019,184,1205,211"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="3088,363,3187,389"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="229,459,389,486"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="517,541,688,583"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="2423,87,2601,114"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="4152,184,4307,211"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="2525,273,2745,300"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="4433,184,4602,211"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="414,459,586,486"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="43,459,205,486"/>
+<area shape="rect" title=" " alt="" coords="4483,80,4674,121"/>
+<area shape="rect" title=" " alt="" coords="4698,80,4889,121"/>
+<area shape="rect" title=" " alt="" coords="4913,80,5103,121"/>
+<area shape="rect" title=" " alt="" coords="5127,80,5286,121"/>
+<area shape="rect" title=" " alt="" coords="1625,631,1703,657"/>
+<area shape="rect" title=" " alt="" coords="1358,631,1557,657"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="1235,459,1413,486"/>
+<area shape="rect" title=" " alt="" coords="1015,631,1167,657"/>
+<area shape="rect" title=" " alt="" coords="858,631,990,657"/>
+<area shape="rect" title=" " alt="" coords="1191,631,1334,657"/>
+<area shape="rect" title=" " alt="" coords="381,631,494,657"/>
+<area shape="rect" title=" " alt="" coords="702,631,834,657"/>
+<area shape="rect" title=" " alt="" coords="605,631,678,657"/>
+<area shape="rect" title=" " alt="" coords="1752,541,1899,583"/>
+<area shape="rect" title=" " alt="" coords="521,631,580,657"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="2149,273,2251,300"/>
+<area shape="rect" title=" " alt="" coords="2208,348,2400,404"/>
+<area shape="rect" title=" " alt="" coords="2656,355,2875,397"/>
+<area shape="rect" title=" " alt="" coords="2425,355,2631,397"/>
+<area shape="rect" title=" " alt="" coords="1489,348,1645,404"/>
+<area shape="rect" title=" " alt="" coords="2011,355,2184,397"/>
+<area shape="rect" title=" " alt="" coords="1669,355,1885,397"/>
+<area shape="rect" title=" " alt="" coords="3857,177,4026,218"/>
+<area shape="rect" title=" " alt="" coords="1606,177,1786,218"/>
+<area shape="rect" title=" " alt="" coords="1810,177,1990,218"/>
+<area shape="rect" title=" " alt="" coords="2014,177,2194,218"/>
+<area shape="rect" title=" " alt="" coords="2218,177,2398,218"/>
+<area shape="rect" title=" " alt="" coords="2575,169,2755,225"/>
+<area shape="rect" title=" " alt="" coords="2779,169,2959,225"/>
+<area shape="rect" title=" " alt="" coords="2984,177,3165,218"/>
+<area shape="rect" title=" " alt="" coords="3190,169,3373,225"/>
+<area shape="rect" title=" " alt="" coords="3449,177,3629,218"/>
+<area shape="rect" title=" " alt="" coords="3653,177,3833,218"/>
+</map>
+</div>
+</div>
+<p><a href="cell__routine_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="cell__routine_8cpp_source.html#l00025">25</a> of file <a class="el" href="cell__routine_8cpp_source.html">cell_routine.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/cell__routine_8cpp__incl.map b/doc/html/cell__routine_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4aa7a06e0e9998ea7de300c00cad4414a3e11448
--- /dev/null
+++ b/doc/html/cell__routine_8cpp__incl.map
@@ -0,0 +1,52 @@
+<map id="cell_routine.cpp" name="cell_routine.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="1353,5,1479,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1201,363,1362,389"/>
+<area shape="rect" id="node6" href="$abstract__map__loader_8h.html" title=" " alt="" coords="915,549,1119,575"/>
+<area shape="rect" id="node7" title=" " alt="" coords="179,631,328,657"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1701,452,1851,493"/>
+<area shape="rect" id="node16" href="$map__loader_8h.html" title=" " alt="" coords="813,459,957,486"/>
+<area shape="rect" id="node18" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2899,355,3063,397"/>
+<area shape="rect" id="node19" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="1019,184,1205,211"/>
+<area shape="rect" id="node21" href="$wing_8h.html" title=" " alt="" coords="3088,363,3187,389"/>
+<area shape="rect" id="node28" href="$wing__reader_8h.html" title=" " alt="" coords="229,459,389,486"/>
+<area shape="rect" id="node29" href="$abstract__param__reader_8h.html" title=" " alt="" coords="517,541,688,583"/>
+<area shape="rect" id="node30" href="$moveit__mediator_8h.html" title=" " alt="" coords="2423,87,2601,114"/>
+<area shape="rect" id="node32" href="$moveit__robot_8h.html" title=" " alt="" coords="4152,184,4307,211"/>
+<area shape="rect" id="node33" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="2525,273,2745,300"/>
+<area shape="rect" id="node34" href="$collision__helper_8h.html" title=" " alt="" coords="4433,184,4602,211"/>
+<area shape="rect" id="node45" href="$cuboid__reader_8h.html" title=" " alt="" coords="414,459,586,486"/>
+<area shape="rect" id="node46" href="$robot__reader_8h.html" title=" " alt="" coords="43,459,205,486"/>
+<area shape="rect" id="node47" title=" " alt="" coords="4483,80,4674,121"/>
+<area shape="rect" id="node48" title=" " alt="" coords="4698,80,4889,121"/>
+<area shape="rect" id="node49" title=" " alt="" coords="4913,80,5103,121"/>
+<area shape="rect" id="node50" title=" " alt="" coords="5127,80,5286,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1625,631,1703,657"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1358,631,1557,657"/>
+<area shape="rect" id="node5" href="$abstract__strategy_8h.html" title=" " alt="" coords="1235,459,1413,486"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1015,631,1167,657"/>
+<area shape="rect" id="node9" title=" " alt="" coords="858,631,990,657"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1191,631,1334,657"/>
+<area shape="rect" id="node11" title=" " alt="" coords="381,631,494,657"/>
+<area shape="rect" id="node12" title=" " alt="" coords="702,631,834,657"/>
+<area shape="rect" id="node13" title=" " alt="" coords="605,631,678,657"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1752,541,1899,583"/>
+<area shape="rect" id="node17" title=" " alt="" coords="521,631,580,657"/>
+<area shape="rect" id="node20" href="$robot_8h.html" title=" " alt="" coords="2149,273,2251,300"/>
+<area shape="rect" id="node22" title=" " alt="" coords="2208,348,2400,404"/>
+<area shape="rect" id="node23" title=" " alt="" coords="2656,355,2875,397"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2425,355,2631,397"/>
+<area shape="rect" id="node25" title=" " alt="" coords="1489,348,1645,404"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2011,355,2184,397"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1669,355,1885,397"/>
+<area shape="rect" id="node31" title=" " alt="" coords="3857,177,4026,218"/>
+<area shape="rect" id="node35" title=" " alt="" coords="1606,177,1786,218"/>
+<area shape="rect" id="node36" title=" " alt="" coords="1810,177,1990,218"/>
+<area shape="rect" id="node37" title=" " alt="" coords="2014,177,2194,218"/>
+<area shape="rect" id="node38" title=" " alt="" coords="2218,177,2398,218"/>
+<area shape="rect" id="node39" title=" " alt="" coords="2575,169,2755,225"/>
+<area shape="rect" id="node40" title=" " alt="" coords="2779,169,2959,225"/>
+<area shape="rect" id="node41" title=" " alt="" coords="2984,177,3165,218"/>
+<area shape="rect" id="node42" title=" " alt="" coords="3190,169,3373,225"/>
+<area shape="rect" id="node43" title=" " alt="" coords="3449,177,3629,218"/>
+<area shape="rect" id="node44" title=" " alt="" coords="3653,177,3833,218"/>
+</map>
diff --git a/doc/html/cell__routine_8cpp__incl.md5 b/doc/html/cell__routine_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7cd9c70d9db4dd50cd5c9ec856123822fb1e4c2d
--- /dev/null
+++ b/doc/html/cell__routine_8cpp__incl.md5
@@ -0,0 +1 @@
+a792a6d50c6d13106c5138c3c53c0c4e
\ No newline at end of file
diff --git a/doc/html/cell__routine_8cpp__incl.png b/doc/html/cell__routine_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..024d5dbb944522e0342f65053e362c65d75d5fe7
Binary files /dev/null and b/doc/html/cell__routine_8cpp__incl.png differ
diff --git a/doc/html/cell__routine_8cpp_source.html b/doc/html/cell__routine_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..0a0a016a257f5023e74b78e8f0488977aa2cf939
--- /dev/null
+++ b/doc/html/cell__routine_8cpp_source.html
@@ -0,0 +1,153 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cell_routine.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">cell_routine.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="cell__routine_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__loader_8h.html">impl/map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__mediator_8h.html">impl/moveit_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__moveit__decorator_8h.html">impl/wing_moveit_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__robot_8h.html">impl/moveit_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="collision__helper_8h.html">impl/collision_helper.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cuboid__reader_8h.html">reader/cuboid_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/grasp_planner.h&gt;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">   25</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv){</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    ros::init(argc, argv, <span class="stringliteral">&quot;cell_routine&quot;</span>);</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; nh = std::make_shared&lt;ros::NodeHandle&gt;();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    ros::AsyncSpinner spinner(1);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    spinner.start();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    XmlRpc::XmlRpcValue map, task;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    nh-&gt;getParam(<span class="stringliteral">&quot;/data&quot;</span>,map);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    nh-&gt;getParam(<span class="stringliteral">&quot;/task/groups&quot;</span>,task);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* map_loader = <span class="keyword">new</span> <a class="code" href="classMap__loader.html">Map_loader</a>(map, task);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;          </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    ros::Publisher* pub = <span class="keyword">new</span> ros::Publisher(nh-&gt;advertise&lt; visualization_msgs::MarkerArray &gt;(<span class="stringliteral">&quot;visualization_marker_array&quot;</span>, 1)); <span class="comment">//refractor</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>* mediator = <span class="keyword">new</span> <a class="code" href="classMoveit__mediator.html">Moveit_mediator</a>(map_loader-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>(), pub, nh);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classMoveit__mediator.html">Moveit_mediator</a>* moveit_mediator = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__mediator.html">Moveit_mediator</a>*<span class="keyword">&gt;</span>(mediator);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    std::unique_ptr&lt;Robot_reader&gt; robot_reader = std::make_unique&lt;Robot_reader&gt;(nh);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keyword">auto</span> rd = robot_reader-&gt;robot_data();</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; rd.size() ;i++) mediator-&gt;<a class="code" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a>(<span class="keyword">new</span> <a class="code" href="classMoveit__robot.html">Moveit_robot</a>(rd[i].name_, rd[i].pose_, rd[i].size_));</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    std::unique_ptr&lt;Wing_reader&gt; wing_reader(<span class="keyword">new</span> <a class="code" href="classWing__reader.html">Wing_reader</a>(nh));</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keyword">auto</span> wd = <span class="keyword">static_cast&lt;</span><a class="code" href="classWing__reader.html">Wing_reader</a>*<span class="keyword">&gt;</span>(wing_reader.get())-&gt;wing_data();</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    std::unique_ptr&lt;Cuboid_reader&gt; cuboid_reader = std::make_unique&lt;Cuboid_reader&gt;(nh);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keyword">auto</span> cbd = cuboid_reader-&gt;cuboid_bin();</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keyword">auto</span> cod = cuboid_reader-&gt;cuboid_obstacle();</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">    for (int i = 0; i &lt; mediator-&gt;robots().size(); i++){</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">        for(object_data&amp; w : wd[i].first){</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">            w.pose_ = mediator-&gt;robots()[i]-&gt;tf().inverse() * w.pose_;</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">        mediator-&gt;robots()[i]-&gt;set_observer_mask(static_cast&lt;wing_config&gt;(wd[i].second));</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">    moveit_mediator-&gt;set_wings(wd);</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* ceti1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(mediator-&gt;<a class="code" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()[0]);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* ceti2 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(mediator-&gt;<a class="code" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()[1]);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    </div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">    for (int i = 0; i &lt; mediator-&gt;robots().size(); i++){</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">        std::bitset&lt;3&gt; bs = wd[i].second;</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">        moveit_mediator-&gt;build_wings(bs, i);</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="comment">//moveit::planning_interface::PlanningSceneInterface::applyCollisionObject()</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    ceti1-&gt;<a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>();</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    ceti2-&gt;<a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>();</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    moveit_mediator-&gt;<a class="code" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">mediate</a>();</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordflow">while</span> (ros::ok()){</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        ros::spinOnce();</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    }</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="amoveit__robot_8h_html"><div class="ttname"><a href="moveit__robot_8h.html">moveit_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a24f9a262c71f04f66550da4f61746e62"><div class="ttname"><a href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">Abstract_mediator::robots</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00054">impl/abstract_mediator.h:54</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="acuboid__reader_8h_html"><div class="ttname"><a href="cuboid__reader_8h.html">cuboid_reader.h</a></div></div>
+<div class="ttc" id="acell__routine_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="cell__routine_8cpp_source.html#l00025">cell_routine.cpp:25</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassWing__reader_html"><div class="ttname"><a href="classWing__reader.html">Wing_reader</a></div><div class="ttdoc">Wing reader.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00014">wing_reader.h:14</a></div></div>
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab95c43650b9596fc2e9bc374abeeadf6"><div class="ttname"><a href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00125">robot.cpp:125</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aa9772fe2bd594967b8f7b980db442ca5"><div class="ttname"><a href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader::task_grasps</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp; task_grasps()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00046">abstract_map_loader.h:46</a></div></div>
+<div class="ttc" id="awing__moveit__decorator_8h_html"><div class="ttname"><a href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="amap__loader_8h_html"><div class="ttname"><a href="map__loader_8h.html">map_loader.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0c102b5e272139492ab04ce0d4e43234"><div class="ttname"><a href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator::connect_robots</a></div><div class="ttdeci">virtual void connect_robots(Abstract_robot *robot)=0</div></div>
+<div class="ttc" id="acollision__helper_8h_html"><div class="ttname"><a href="collision__helper_8h.html">collision_helper.h</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassMap__loader_html"><div class="ttname"><a href="classMap__loader.html">Map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8h_source.html#l00010">map_loader.h:10</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab864f0b277826dafff1944d9f884acff"><div class="ttname"><a href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00067">moveit_mediator.cpp:67</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html"><div class="ttname"><a href="classMoveit__mediator.html">Moveit_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00054">moveit_mediator.h:54</a></div></div>
+<div class="ttc" id="amoveit__mediator_8h_html"><div class="ttname"><a href="moveit__mediator_8h.html">moveit_mediator.h</a></div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ceti__robot_8cpp.html b/doc/html/ceti__robot_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c055f57f2b890646f726bd8ea0fbda4b624c744
--- /dev/null
+++ b/doc/html/ceti__robot_8cpp.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ceti_robot.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ceti_robot.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="ceti__robot_8h_source.html">robot/ceti_robot.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for ceti_robot.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="ceti__robot_8cpp__incl.png" border="0" usemap="#ceti__robot_8cpp" alt=""/></div>
+<map name="ceti__robot_8cpp" id="ceti__robot_8cpp">
+<area shape="rect" title=" " alt="" coords="852,5,967,32"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="841,80,978,107"/>
+<area shape="rect" title=" " alt="" coords="351,348,430,375"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="725,169,891,196"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="469,259,643,300"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="249,155,439,211"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="463,162,649,203"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="39,162,225,203"/>
+<area shape="rect" title=" " alt="" coords="916,155,1108,211"/>
+<area shape="rect" title=" " alt="" coords="1132,162,1351,203"/>
+<area shape="rect" title=" " alt="" coords="1375,162,1582,203"/>
+<area shape="rect" title=" " alt="" coords="1606,155,1762,211"/>
+<area shape="rect" title=" " alt="" coords="1787,162,1960,203"/>
+<area shape="rect" title=" " alt="" coords="1984,162,2200,203"/>
+<area shape="rect" title=" " alt="" coords="478,348,677,375"/>
+</map>
+</div>
+</div>
+<p><a href="ceti__robot_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ceti__robot_8cpp__incl.map b/doc/html/ceti__robot_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4d8f4f3f0fb1143cb1801908fdad3c4823a4cb8d
--- /dev/null
+++ b/doc/html/ceti__robot_8cpp__incl.map
@@ -0,0 +1,17 @@
+<map id="ceti_robot.cpp" name="ceti_robot.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="852,5,967,32"/>
+<area shape="rect" id="node2" href="$ceti__robot_8h.html" title=" " alt="" coords="841,80,978,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="351,348,430,375"/>
+<area shape="rect" id="node4" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="725,169,891,196"/>
+<area shape="rect" id="node6" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="469,259,643,300"/>
+<area shape="rect" id="node7" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="249,155,439,211"/>
+<area shape="rect" id="node8" href="$panel_8h.html" title=" " alt="" coords="463,162,649,203"/>
+<area shape="rect" id="node9" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="39,162,225,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="916,155,1108,211"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1132,162,1351,203"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1375,162,1582,203"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1606,155,1762,211"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1787,162,1960,203"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1984,162,2200,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="478,348,677,375"/>
+</map>
diff --git a/doc/html/ceti__robot_8cpp__incl.md5 b/doc/html/ceti__robot_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0caf7bf41f6dc088f20f0dba2413ba554cef2f03
--- /dev/null
+++ b/doc/html/ceti__robot_8cpp__incl.md5
@@ -0,0 +1 @@
+0906b280ded6e24cee9f4a04f77fba0f
\ No newline at end of file
diff --git a/doc/html/ceti__robot_8cpp__incl.png b/doc/html/ceti__robot_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b7b7ee22f80a4966bee47254f839ad24074758c0
Binary files /dev/null and b/doc/html/ceti__robot_8cpp__incl.png differ
diff --git a/doc/html/ceti__robot_8cpp_source.html b/doc/html/ceti__robot_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f4f77e8881d2916833d14e51cc7441f1b152dff
--- /dev/null
+++ b/doc/html/ceti__robot_8cpp_source.html
@@ -0,0 +1,258 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ceti_robot.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ceti_robot.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="ceti__robot_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ceti__robot_8h.html">robot/ceti_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">    3</a></span>&#160;<a class="code" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot::Ceti_robot</a>(std::string&amp; name, tf2::Transform tf, tf2::Vector3 size) </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;: <a class="code" href="classAbstract__robot.html">Abstract_robot</a>(name, tf, size)</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;, observer_mask_(std::bitset&lt;3&gt;(0))</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;{</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    <a class="code" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">generate_access_fields</a>();</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;}</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">   12</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">Ceti_robot::generate_access_fields</a>(){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= 2; i++){</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt;= 2; j++){</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            <span class="keywordflow">if</span>(i == 0 &amp;&amp; j == 0) {<span class="keywordflow">continue</span>;}</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            <span class="keywordflow">if</span>(i == 2 &amp;&amp; j == 2) {<span class="keywordflow">continue</span>;}</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            <span class="keywordflow">if</span>(i == 0) {</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;                <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;                <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j == 0){</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,0,0))));</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,0,0))));</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;            } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;            <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;            <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;            <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getX()*i,-<a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>.getY()*j,0))));</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;            }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        };</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    };</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(1.305f,0,0))));</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-1.305f,0,0))));</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,1.305f,0))));</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.push_back(std::make_unique&lt;Field&gt;(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-1.305f,0)))); </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;}</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">   38</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot::workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj){</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>.size(); i++){</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        tf2::Transform A = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[0];</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        tf2::Transform B = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[1];</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        tf2::Transform C = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[2];</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        tf2::Transform D = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[3];</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;            </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keywordtype">float</span> full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keywordtype">float</span> sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,obj,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,obj,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,obj,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) { </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;            count_vector[i]++; <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        }</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    }</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,obj,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,obj,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,obj,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) count_vector.back()++; <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;}</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">   65</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot::check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; str){</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[0];</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[1];</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[2];</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[3];</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,obj,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,obj,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,obj,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) {<span class="keywordflow">return</span> <span class="keyword">false</span>; } </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;base_&quot;</span> &lt;&lt; <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>.back();</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,obj,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,obj,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,obj,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area){</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        str = ss.str();</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    }</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>.size(); i++){</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        tf2::Transform A = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[0];</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        tf2::Transform B = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[1];</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        tf2::Transform C = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[2];</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        tf2::Transform D = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[3];</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,obj,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,obj,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,obj,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) {</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;            str = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;name();</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        } </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    }</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;}</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">  106</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">Ceti_robot::reset</a>(){</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>.clear();</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.clear();</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <a class="code" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">generate_access_fields</a>();</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> = tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0, <a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>().getOrigin().getZ()));</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;}</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">  113</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot::notify</a>(){ </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>.size(); i++) <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;update(<a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>); </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>.size(); i++) <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>[i]-&gt;update(<a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;}</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">  118</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot::in_collision</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* rob){</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,B,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,rob-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>(),D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,rob-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>(),C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,rob-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>(),B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(rob-&gt;<a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>(), B, A);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>().<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>(); i++) {</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        tf2::Transform WA = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf() * rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;bounds()[0];</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        tf2::Transform WB = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf() * rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;bounds()[1];</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        tf2::Transform WC = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf() * rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;bounds()[2];</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        tf2::Transform WD = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;world_tf() * rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[i]-&gt;bounds()[3];</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,WA,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,WA,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,WA,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,WB,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,WB,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,WB,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WB, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,WC,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,WC,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,WC,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(A,WD,D) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(D,WD,C) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(C,WD,B) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>.size(); i++){</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        tf2::Transform WA = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[0];</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        tf2::Transform WB = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[1];</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        tf2::Transform WC = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[2];</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        tf2::Transform WD = <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[i]-&gt;bounds()[3];</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        full_area = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WB,WC) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WD,WC);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt; rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>().<a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>(); j++) {</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;            tf2::Transform WA2 = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[j]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[j]-&gt;bounds()[0];</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;            tf2::Transform WB2 = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[j]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[j]-&gt;bounds()[1];</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;            tf2::Transform WC2 = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[j]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[j]-&gt;bounds()[2];</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;            tf2::Transform WD2 = rob-&gt;<a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()[j]-&gt;world_tf() * <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>[j]-&gt;bounds()[3];</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;            sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WA2,WD) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD,WA2,WC) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC,WA2,WB) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;            sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WB2,WD) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD,WB2,WC) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC,WB2,WB) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WB2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;            sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WC2,WD) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD,WC2,WC) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC,WC2,WB) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;            sum = <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WA,WD2,WD) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD,WD2,WC) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WC,WD2,WB) + <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(WD2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        }</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    }</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;}</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160; </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160; </div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">  162</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">Ceti_robot::register_observers</a>(std::unique_ptr&lt;Abstract_robot_element&gt; wd){</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">    auto deco = dynamic_cast&lt;Abstract_robot_element_decorator*&gt;(wd.get());</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment">    bool found = false;</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="comment">    int index = 0;</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">    if (deco-&gt;wing()-&gt;relative_tf().getOrigin().getY()&gt;0){</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">        for(long unsigned int i = 0; i &lt; access_fields_.size(); i++){</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="comment">            if ((access_fields_[i]-&gt;relative_tf().getOrigin().getY() &gt; 0) &amp;&amp; (access_fields_[i]-&gt;relative_tf().getOrigin().getX() == 0)){</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">                found = true;</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">                index = i;</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">                break;</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment">        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">    } else if (deco-&gt;wing()-&gt;relative_tf().getOrigin().getY()&lt;0) {</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">        for(long unsigned int i = 0; i &lt; access_fields_.size(); i++){</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">            if ((access_fields_[i]-&gt;relative_tf().getOrigin().getY() &lt; 0) &amp;&amp; (access_fields_[i]-&gt;relative_tf().getOrigin().getX() == 0)){</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="comment">                found = true;</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">                index = i;</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">                break;</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment">        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">    } else {</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">        for(long unsigned int i = 0; i &lt; access_fields_.size(); i++){</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="comment">            if (access_fields_[i]-&gt;relative_tf().getOrigin().getX() &gt; 0){</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">                found = true;</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">                index = i;</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">                break;</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment">    observers_.push_back(std::move(wd));</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;};</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassCeti__robot_html_a50602f1990429a31148ec90369c8b390"><div class="ttname"><a href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdoc">Observer pattern.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00113">ceti_robot.cpp:113</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ace21ef0128109d49de07e1fe675b595d"><div class="ttname"><a href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">Ceti_robot::generate_access_fields</a></div><div class="ttdeci">void generate_access_fields()</div><div class="ttdoc">Generate access fields as surrounding poses for possible robots.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00012">ceti_robot.cpp:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a1402d06f3393679d585376716cc2a534"><div class="ttname"><a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot::area_calculation</a></div><div class="ttdeci">float area_calculation(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</div><div class="ttdoc">Triangle area calculator.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot_8cpp_source.html#l00022">abstract_robot.cpp:22</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a60528a5a7c83e0b15d9fee091b00e5b3"><div class="ttname"><a href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00043">ceti_robot.h:43</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ac28cfaf3ea80e2d3271c0c8ca634dc77"><div class="ttname"><a href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">Ceti_robot::register_observers</a></div><div class="ttdeci">void register_observers(std::unique_ptr&lt; Abstract_robot_element &gt; wd)</div><div class="ttdoc">Register observers in vector.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00162">ceti_robot.cpp:162</a></div></div>
+<div class="ttc" id="aceti__robot_8h_html"><div class="ttname"><a href="ceti__robot_8h.html">ceti_robot.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_aafdcb4ce7d655b291170818c43162aa7"><div class="ttname"><a href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00044">ceti_robot.h:44</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ae788dd0c96ea0112e46c0c817eb40466"><div class="ttname"><a href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">Ceti_robot::access_fields_</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; access_fields_</div><div class="ttdoc">Serrounding Fields shared pointers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00025">ceti_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_af0e5f7417926e50ccb607c6612170687"><div class="ttname"><a href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot::in_collision</a></div><div class="ttdeci">bool in_collision(Ceti_robot *R)</div><div class="ttdoc">Collsion calculation.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00118">ceti_robot.cpp:118</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a854a3c8c740dcb60e0ee347fcd5447f6"><div class="ttname"><a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot::tf_</a></div><div class="ttdeci">tf2::Transform tf_</div><div class="ttdoc">Pose of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00029">impl/abstract_robot.h:29</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a948403a8fba6220b86d2cda6cb74a326"><div class="ttname"><a href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">Ceti_robot::observers</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &amp; observers()</div><div class="ttdoc">Get observers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00053">ceti_robot.h:53</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a9db994a08373f0c75bd69226855f2b54"><div class="ttname"><a href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">Ceti_robot::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdoc">Resset all robot properties.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00106">ceti_robot.cpp:106</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html"><div class="ttname"><a href="classCeti__robot.html">Ceti_robot</a></div><div class="ttdoc">Concrete Ceti-Robot.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00022">ceti_robot.h:22</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_af8c6391807befcfd2d431ad180a3beaf"><div class="ttname"><a href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">Ceti_robot::observers_</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; observers_</div><div class="ttdoc">Wing shared pointers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00024">ceti_robot.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><div class="ttname"><a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">Name of robot.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00027">impl/abstract_robot.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af92f5538f28fbe61687d70f15e84fb82"><div class="ttname"><a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdoc">Size of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00028">impl/abstract_robot.h:28</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a128b5891d5519855c387dd0fd3b04384"><div class="ttname"><a href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot::check_single_object_collision</a></div><div class="ttdeci">bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;str) override</div><div class="ttdoc">Collsion calculation for single objects.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00065">ceti_robot.cpp:65</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a8bfe48e6325263ae5607a5621dedebe9"><div class="ttname"><a href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot::workload_checker</a></div><div class="ttdeci">void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</div><div class="ttdoc">Object counter.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00038">ceti_robot.cpp:38</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ade0920ab43886af89a431f7808207efd"><div class="ttname"><a href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot::Ceti_robot</a></div><div class="ttdeci">Ceti_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdoc">Ceti robot constructor.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00003">ceti_robot.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ceti__robot_8h.html b/doc/html/ceti__robot_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..14a01d89288a43f5922b5548c2d1d5134af0f691
--- /dev/null
+++ b/doc/html/ceti__robot_8h.html
@@ -0,0 +1,95 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ceti_robot.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">ceti_robot.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="panel_8h_source.html">robot_element/observers/panel.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+<code>#include &lt;moveit/kinematic_constraints/utils.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for ceti_robot.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="ceti__robot_8h__incl.png" border="0" usemap="#ceti__robot_8h" alt=""/></div>
+<map name="ceti__robot_8h" id="ceti__robot_8h">
+<area shape="rect" title=" " alt="" coords="860,5,959,32"/>
+<area shape="rect" title=" " alt="" coords="351,273,430,300"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="725,95,891,121"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="469,184,643,225"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="249,80,439,136"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="463,87,649,129"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="39,87,225,129"/>
+<area shape="rect" title=" " alt="" coords="916,80,1108,136"/>
+<area shape="rect" title=" " alt="" coords="1132,87,1351,129"/>
+<area shape="rect" title=" " alt="" coords="1375,87,1582,129"/>
+<area shape="rect" title=" " alt="" coords="1606,80,1762,136"/>
+<area shape="rect" title=" " alt="" coords="1787,87,1960,129"/>
+<area shape="rect" title=" " alt="" coords="1984,87,2200,129"/>
+<area shape="rect" title=" " alt="" coords="478,273,677,300"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="ceti__robot_8h__dep__incl.png" border="0" usemap="#ceti__robot_8hdep" alt=""/></div>
+<map name="ceti__robot_8hdep" id="ceti__robot_8hdep">
+<area shape="rect" title=" " alt="" coords="432,5,531,32"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="283,80,437,107"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="53,155,262,181"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,229,426,271"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="580,80,695,107"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="337,155,505,181"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,237,229,263"/>
+</map>
+</div>
+</div>
+<p><a href="ceti__robot_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concrete Ceti-Robot.  <a href="classCeti__robot.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ceti__robot_8h__dep__incl.map b/doc/html/ceti__robot_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..55986f416f7a434bac29a7358b2f2e973b28a084
--- /dev/null
+++ b/doc/html/ceti__robot_8h__dep__incl.map
@@ -0,0 +1,9 @@
+<map id="ceti_robot.h" name="ceti_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="432,5,531,32"/>
+<area shape="rect" id="node2" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="283,80,437,107"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="53,155,262,181"/>
+<area shape="rect" id="node5" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,229,426,271"/>
+<area shape="rect" id="node7" href="$ceti__robot_8cpp.html" title=" " alt="" coords="580,80,695,107"/>
+<area shape="rect" id="node6" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="337,155,505,181"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,237,229,263"/>
+</map>
diff --git a/doc/html/ceti__robot_8h__dep__incl.md5 b/doc/html/ceti__robot_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..10262bf0a198e651179da8099f954e6475fdb765
--- /dev/null
+++ b/doc/html/ceti__robot_8h__dep__incl.md5
@@ -0,0 +1 @@
+bb314a788e37f448122f0998375543fa
\ No newline at end of file
diff --git a/doc/html/ceti__robot_8h__dep__incl.png b/doc/html/ceti__robot_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ff43bc9bb210be9f032df1faaa322e5016b38a40
Binary files /dev/null and b/doc/html/ceti__robot_8h__dep__incl.png differ
diff --git a/doc/html/ceti__robot_8h__incl.map b/doc/html/ceti__robot_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..168b18cd0e6c13050354d013e1a2fcd4663627ed
--- /dev/null
+++ b/doc/html/ceti__robot_8h__incl.map
@@ -0,0 +1,16 @@
+<map id="ceti_robot.h" name="ceti_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="860,5,959,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="351,273,430,300"/>
+<area shape="rect" id="node3" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="725,95,891,121"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="469,184,643,225"/>
+<area shape="rect" id="node6" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="249,80,439,136"/>
+<area shape="rect" id="node7" href="$panel_8h.html" title=" " alt="" coords="463,87,649,129"/>
+<area shape="rect" id="node8" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="39,87,225,129"/>
+<area shape="rect" id="node9" title=" " alt="" coords="916,80,1108,136"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1132,87,1351,129"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1375,87,1582,129"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1606,80,1762,136"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1787,87,1960,129"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1984,87,2200,129"/>
+<area shape="rect" id="node4" title=" " alt="" coords="478,273,677,300"/>
+</map>
diff --git a/doc/html/ceti__robot_8h__incl.md5 b/doc/html/ceti__robot_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..aa07413f0a428845d1fcda59b9c70677b88dde79
--- /dev/null
+++ b/doc/html/ceti__robot_8h__incl.md5
@@ -0,0 +1 @@
+69e12ac6a7b9228a5c103c22a512b38c
\ No newline at end of file
diff --git a/doc/html/ceti__robot_8h__incl.png b/doc/html/ceti__robot_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f1f73903203a52e80eec7412fa84e9b52055ffaa
Binary files /dev/null and b/doc/html/ceti__robot_8h__incl.png differ
diff --git a/doc/html/ceti__robot_8h_source.html b/doc/html/ceti__robot_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..89f94e2908d6283d214a59bec2897af6d7c60deb
--- /dev/null
+++ b/doc/html/ceti__robot_8h_source.html
@@ -0,0 +1,155 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ceti_robot.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ceti_robot.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="ceti__robot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef CETI_ROBOT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define CETI_ROBOT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panel_8h.html">robot_element/observers/panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;moveit/kinematic_constraints/utils.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classCeti__robot.html">   22</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCeti__robot.html">Ceti_robot</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__robot.html">Abstract_robot</a>{</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">   24</a></span>&#160;    std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt; <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>;  </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">   25</a></span>&#160;    std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt; <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>;  </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">   26</a></span>&#160;    std::vector&lt;std::shared_ptr&lt;moveit_msgs::CollisionObject&gt;&gt; <a class="code" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">coll_markers_</a>; </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">   27</a></span>&#160;    std::bitset&lt;3&gt; <a class="code" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">observer_mask_</a>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot</a>(std::string&amp; <a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>, tf2::Transform <a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>, tf2::Vector3 <a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">   42</a></span>&#160;    std::string&amp; <a class="code" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>;}</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">   43</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>;}</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">   44</a></span>&#160;    tf2::Vector3&amp; <a class="code" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>;}</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">   45</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">root_tf</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>;}</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">   46</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>;}</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">   47</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">robot_root_bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>;}</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">   53</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt;&amp; <a class="code" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>() { <span class="keywordflow">return</span> <a class="code" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a>;}</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">   59</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt;&amp; <a class="code" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">access_fields</a>() { <span class="keywordflow">return</span> <a class="code" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a>;}</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">   65</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">add_coll_markers</a>(std::shared_ptr&lt;moveit_msgs::CollisionObject&gt; marker) {<a class="code" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">coll_markers_</a>.push_back(marker);}</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">   71</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::shared_ptr&lt;moveit_msgs::CollisionObject&gt;&gt; <a class="code" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">coll_markers</a>(){ <span class="keywordflow">return</span> <a class="code" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">coll_markers_</a>;}</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">register_observers</a>(std::unique_ptr&lt;Abstract_robot_element&gt; wd);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">reset</a>();</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">generate_access_fields</a>();</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">in_collision</a>(<a class="code" href="classCeti__robot.html">Ceti_robot</a>* R);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; str) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">notify</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">  117</a></span>&#160;    <span class="keyword">inline</span> std::bitset&lt;3&gt; <a class="code" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">observer_mask</a>() {<span class="keywordflow">return</span> <a class="code" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">observer_mask_</a>;}</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">  118</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">set_observer_mask</a>(<span class="keywordtype">int</span> i) {<a class="code" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">observer_mask_</a> = std::bitset&lt;3&gt;(i);}</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;};</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160; </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160; </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a50602f1990429a31148ec90369c8b390"><div class="ttname"><a href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdoc">Observer pattern.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00113">ceti_robot.cpp:113</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ace21ef0128109d49de07e1fe675b595d"><div class="ttname"><a href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">Ceti_robot::generate_access_fields</a></div><div class="ttdeci">void generate_access_fields()</div><div class="ttdoc">Generate access fields as surrounding poses for possible robots.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00012">ceti_robot.cpp:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a86d9f27c0ebcbc7b7ce79a3ebfe60a16"><div class="ttname"><a href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">Ceti_robot::set_observer_mask</a></div><div class="ttdeci">void set_observer_mask(int i)</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00118">ceti_robot.h:118</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a60528a5a7c83e0b15d9fee091b00e5b3"><div class="ttname"><a href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00043">ceti_robot.h:43</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ac28cfaf3ea80e2d3271c0c8ca634dc77"><div class="ttname"><a href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">Ceti_robot::register_observers</a></div><div class="ttdeci">void register_observers(std::unique_ptr&lt; Abstract_robot_element &gt; wd)</div><div class="ttdoc">Register observers in vector.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00162">ceti_robot.cpp:162</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_aafdcb4ce7d655b291170818c43162aa7"><div class="ttname"><a href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00044">ceti_robot.h:44</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a96c4c46c18217a5f55bbb9e8d57d0b9b"><div class="ttname"><a href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">Ceti_robot::coll_markers_</a></div><div class="ttdeci">std::vector&lt; std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; &gt; coll_markers_</div><div class="ttdoc">to be checked</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00026">ceti_robot.h:26</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a4ad187750675fbe7ba8ded55f2c0e3b7"><div class="ttname"><a href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">Ceti_robot::access_fields</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &amp; access_fields()</div><div class="ttdoc">Get access fields.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00059">ceti_robot.h:59</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ae788dd0c96ea0112e46c0c817eb40466"><div class="ttname"><a href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">Ceti_robot::access_fields_</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; access_fields_</div><div class="ttdoc">Serrounding Fields shared pointers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00025">ceti_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_af0e5f7417926e50ccb607c6612170687"><div class="ttname"><a href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot::in_collision</a></div><div class="ttdeci">bool in_collision(Ceti_robot *R)</div><div class="ttdoc">Collsion calculation.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00118">ceti_robot.cpp:118</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a854a3c8c740dcb60e0ee347fcd5447f6"><div class="ttname"><a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot::tf_</a></div><div class="ttdeci">tf2::Transform tf_</div><div class="ttdoc">Pose of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00029">impl/abstract_robot.h:29</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_adfdaf371d8c0ba26fe6ea193539cd2f9"><div class="ttname"><a href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">Ceti_robot::observer_mask_</a></div><div class="ttdeci">std::bitset&lt; 3 &gt; observer_mask_</div><div class="ttdoc">Bitmap to set observers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00027">ceti_robot.h:27</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a2bca93f0ea688ce45a50b06edae104df"><div class="ttname"><a href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">Ceti_robot::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00046">ceti_robot.h:46</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a948403a8fba6220b86d2cda6cb74a326"><div class="ttname"><a href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">Ceti_robot::observers</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &amp; observers()</div><div class="ttdoc">Get observers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00053">ceti_robot.h:53</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a9db994a08373f0c75bd69226855f2b54"><div class="ttname"><a href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">Ceti_robot::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdoc">Resset all robot properties.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00106">ceti_robot.cpp:106</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a85afa4e99b4d31282a0b1e7cba45176c"><div class="ttname"><a href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">Ceti_robot::add_coll_markers</a></div><div class="ttdeci">void add_coll_markers(std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; marker)</div><div class="ttdoc">Adds marker to array.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00065">ceti_robot.h:65</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html"><div class="ttname"><a href="classCeti__robot.html">Ceti_robot</a></div><div class="ttdoc">Concrete Ceti-Robot.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00022">ceti_robot.h:22</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_af8c6391807befcfd2d431ad180a3beaf"><div class="ttname"><a href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">Ceti_robot::observers_</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; observers_</div><div class="ttdoc">Wing shared pointers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00024">ceti_robot.h:24</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_afeb11427714da34b8203de2d094dd536"><div class="ttname"><a href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">Ceti_robot::observer_mask</a></div><div class="ttdeci">std::bitset&lt; 3 &gt; observer_mask()</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00117">ceti_robot.h:117</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><div class="ttname"><a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">Name of robot.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00027">impl/abstract_robot.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af92f5538f28fbe61687d70f15e84fb82"><div class="ttname"><a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdoc">Size of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00028">impl/abstract_robot.h:28</a></div></div>
+<div class="ttc" id="arobot__element_2observers_2field_8h_html"><div class="ttname"><a href="robot__element_2observers_2field_8h.html">field.h</a></div></div>
+<div class="ttc" id="arobot__element_2decorators_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ac5776cb1039f39138f46c3a13799ee3b"><div class="ttname"><a href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">Ceti_robot::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00042">ceti_robot.h:42</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a128b5891d5519855c387dd0fd3b04384"><div class="ttname"><a href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot::check_single_object_collision</a></div><div class="ttdeci">bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;str) override</div><div class="ttdoc">Collsion calculation for single objects.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00065">ceti_robot.cpp:65</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a4c9612f7a87974aa64622fd4acd8123e"><div class="ttname"><a href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">Ceti_robot::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00045">ceti_robot.h:45</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a31ba978529d6f3039ff7223f90d864ec"><div class="ttname"><a href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">Ceti_robot::robot_root_bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; robot_root_bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00047">ceti_robot.h:47</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a8bfe48e6325263ae5607a5621dedebe9"><div class="ttname"><a href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot::workload_checker</a></div><div class="ttdeci">void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</div><div class="ttdoc">Object counter.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00038">ceti_robot.cpp:38</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+<div class="ttc" id="apanel_8h_html"><div class="ttname"><a href="panel_8h.html">panel.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_ade0920ab43886af89a431f7808207efd"><div class="ttname"><a href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot::Ceti_robot</a></div><div class="ttdeci">Ceti_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdoc">Ceti robot constructor.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8cpp_source.html#l00003">ceti_robot.cpp:3</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_aa12e1de6f139604143bb19b34abbfaeb"><div class="ttname"><a href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">Ceti_robot::coll_markers</a></div><div class="ttdeci">std::vector&lt; std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; &gt; coll_markers()</div><div class="ttdoc">Get collision markers.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00071">ceti_robot.h:71</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__base-members.html b/doc/html/classAbstract__base-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..878b4877f46f8713f51f337a9569399d0cfd37ad
--- /dev/null
+++ b/doc/html/classAbstract__base-members.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_base Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__base.html">Abstract_base</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">base_calculation</a>()=0</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">create_pcl_box</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">implementation</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">inv_map</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">map</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">set_implementation</a>(std::shared_ptr&lt; Abstract_base_implementation &gt; some_implememntation)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">set_inv_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">set_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">set_target_cloud</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">set_task_space</a>(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;s_trans)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">target_cloud</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">task_space</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">write_task</a>(Abstract_robot *robot)=0</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__base.html b/doc/html/classAbstract__base.html
new file mode 100644
index 0000000000000000000000000000000000000000..862810398493c836849e7b9c3a43dc367485a147
--- /dev/null
+++ b/doc/html/classAbstract__base.html
@@ -0,0 +1,749 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_base Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__base-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_base Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Abstract base class.  
+ <a href="classAbstract__base.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_base:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__base__inherit__graph.png" border="0" usemap="#Abstract__base_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__base_inherit__map" id="Abstract__base_inherit__map">
+<area shape="rect" title="Abstract base class." alt="" coords="5,5,120,32"/>
+<area shape="rect" href="classSimple__base.html" title="refiend base abstraction" alt="" coords="10,80,115,107"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a68300edaeff45edafe777bc4f7be2433"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a68300edaeff45edafe777bc4f7be2433"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base constructor.  <a href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">More...</a><br /></td></tr>
+<tr class="separator:a68300edaeff45edafe777bc4f7be2433"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a205a26b0fb0e75b2ea3a442cdc0926b2"><td class="memItemLeft" align="right" valign="top">virtual std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">base_calculation</a> ()=0</td></tr>
+<tr class="memdesc:a205a26b0fb0e75b2ea3a442cdc0926b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual template methode  <a href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">More...</a><br /></td></tr>
+<tr class="separator:a205a26b0fb0e75b2ea3a442cdc0926b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fe29f317aeb7337c2eaeaefdc1d1ba9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">implementation</a> ()</td></tr>
+<tr class="memdesc:a9fe29f317aeb7337c2eaeaefdc1d1ba9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get used implementation.  <a href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">More...</a><br /></td></tr>
+<tr class="separator:a9fe29f317aeb7337c2eaeaefdc1d1ba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebb83168a14d660a024240bfaad70a80"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">inv_map</a> ()</td></tr>
+<tr class="memdesc:aebb83168a14d660a024240bfaad70a80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get inverse map structure.  <a href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">More...</a><br /></td></tr>
+<tr class="separator:aebb83168a14d660a024240bfaad70a80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a16c06aa3591c4daa7872dd0a1510d8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">map</a> ()</td></tr>
+<tr class="memdesc:a0a16c06aa3591c4daa7872dd0a1510d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get map structure.  <a href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">More...</a><br /></td></tr>
+<tr class="separator:a0a16c06aa3591c4daa7872dd0a1510d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae41eb0b9891cdcfca4ae7df8234a9113"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">set_implementation</a> (std::shared_ptr&lt; <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> &gt; some_implememntation)</td></tr>
+<tr class="memdesc:ae41eb0b9891cdcfca4ae7df8234a9113"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set used implementation.  <a href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">More...</a><br /></td></tr>
+<tr class="separator:ae41eb0b9891cdcfca4ae7df8234a9113"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12b49689227a6dd6d0aa55fe273dfae2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">set_inv_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="memdesc:a12b49689227a6dd6d0aa55fe273dfae2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set inverse map structure.  <a href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">More...</a><br /></td></tr>
+<tr class="separator:a12b49689227a6dd6d0aa55fe273dfae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac83e7d3257c5cadc3285a90801f7a479"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">set_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="memdesc:ac83e7d3257c5cadc3285a90801f7a479"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set map structure.  <a href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">More...</a><br /></td></tr>
+<tr class="separator:ac83e7d3257c5cadc3285a90801f7a479"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65784b6507975934712e2509e237680a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">set_target_cloud</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td></tr>
+<tr class="memdesc:a65784b6507975934712e2509e237680a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set task cloud.  <a href="classAbstract__base.html#a65784b6507975934712e2509e237680a">More...</a><br /></td></tr>
+<tr class="separator:a65784b6507975934712e2509e237680a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2031dc21ac6416978f9fe854449287e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">set_task_space</a> (std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;s_trans)</td></tr>
+<tr class="memdesc:ae2031dc21ac6416978f9fe854449287e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set task space.  <a href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">More...</a><br /></td></tr>
+<tr class="separator:ae2031dc21ac6416978f9fe854449287e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7c57b1ac4fb42ab400c0fc08e9aff61"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">target_cloud</a> ()</td></tr>
+<tr class="memdesc:ab7c57b1ac4fb42ab400c0fc08e9aff61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get task cloud.  <a href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">More...</a><br /></td></tr>
+<tr class="separator:ab7c57b1ac4fb42ab400c0fc08e9aff61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b63750f9b890cf99f9187624cc97be"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">task_space</a> ()</td></tr>
+<tr class="memdesc:ad4b63750f9b890cf99f9187624cc97be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get task space.  <a href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">More...</a><br /></td></tr>
+<tr class="separator:ad4b63750f9b890cf99f9187624cc97be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fa949c8f9fd12d96add87d38810ceef"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">write_task</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot)=0</td></tr>
+<tr class="memdesc:a3fa949c8f9fd12d96add87d38810ceef"><td class="mdescLeft">&#160;</td><td class="mdescRight">write trask  <a href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">More...</a><br /></td></tr>
+<tr class="separator:a3fa949c8f9fd12d96add87d38810ceef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a4f721d18ef125fe286eeb7978fc499ba"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">create_pcl_box</a> ()</td></tr>
+<tr class="memdesc:a4f721d18ef125fe286eeb7978fc499ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">box discretization  <a href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">More...</a><br /></td></tr>
+<tr class="separator:a4f721d18ef125fe286eeb7978fc499ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ab73fdbf60e0d79d8ba4eeca3a894e39e"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a></td></tr>
+<tr class="memdesc:ab73fdbf60e0d79d8ba4eeca3a894e39e"><td class="mdescLeft">&#160;</td><td class="mdescRight">refined implementation  <a href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">More...</a><br /></td></tr>
+<tr class="separator:ab73fdbf60e0d79d8ba4eeca3a894e39e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b80b83e10a75f0421594e46c9b49381"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a></td></tr>
+<tr class="memdesc:a9b80b83e10a75f0421594e46c9b49381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inversion of reachability map structure.  <a href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">More...</a><br /></td></tr>
+<tr class="separator:a9b80b83e10a75f0421594e46c9b49381"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a589f01126eab356919d97480e30b17ab"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a></td></tr>
+<tr class="memdesc:a589f01126eab356919d97480e30b17ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reachability map structure of a robot.  <a href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">More...</a><br /></td></tr>
+<tr class="separator:a589f01126eab356919d97480e30b17ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54d21fd6fe1217c1b065c5b500e3e8d0"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a></td></tr>
+<tr class="memdesc:a54d21fd6fe1217c1b065c5b500e3e8d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">More...</a><br /></td></tr>
+<tr class="separator:a54d21fd6fe1217c1b065c5b500e3e8d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20a272f916415c6d30d6c3af3eb75f33"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a></td></tr>
+<tr class="memdesc:a20a272f916415c6d30d6c3af3eb75f33"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointcloud structure, mapped to robot.  <a href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">More...</a><br /></td></tr>
+<tr class="separator:a20a272f916415c6d30d6c3af3eb75f33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c32441b38f2cb24388e8d98fd8fe2bc"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a></td></tr>
+<tr class="memdesc:a8c32441b38f2cb24388e8d98fd8fe2bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drop-off locations with their grasp orientations, mapped to a robot.  <a href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">More...</a><br /></td></tr>
+<tr class="separator:a8c32441b38f2cb24388e8d98fd8fe2bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Abstract base class. </p>
+<p>Class which represents the template class abstraction, which calls methodes from an abstract implementation </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00029">29</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a68300edaeff45edafe777bc4f7be2433"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68300edaeff45edafe777bc4f7be2433">&#9670;&nbsp;</a></span>Abstract_base()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_base::Abstract_base </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Abstract base constructor. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ros::NodeHandle to interact with paramserver </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00045">45</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a205a26b0fb0e75b2ea3a442cdc0926b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a205a26b0fb0e75b2ea3a442cdc0926b2">&#9670;&nbsp;</a></span>base_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt; &gt; Abstract_base::base_calculation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual template methode </p>
+<p>bridge template methode, in which implementation is called to calculate base positions </p><dl class="section return"><dt>Returns</dt><dd>base positions as pcl::PointXYZ vector mapped to robot </dd></dl>
+
+<p>Implemented in <a class="el" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base</a>.</p>
+
+</div>
+</div>
+<a id="a4f721d18ef125fe286eeb7978fc499ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f721d18ef125fe286eeb7978fc499ba">&#9670;&nbsp;</a></span>create_pcl_box()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static std::vector&lt;pcl::PointXYZ&gt; Abstract_base::create_pcl_box </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>box discretization </p>
+<p>box shaped representation of space, centered at origin (0,0,0) </p><dl class="section return"><dt>Returns</dt><dd>vector of pcl::PointXYZ data </dd></dl>
+
+</div>
+</div>
+<a id="a9fe29f317aeb7337c2eaeaefdc1d1ba9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fe29f317aeb7337c2eaeaefdc1d1ba9">&#9670;&nbsp;</a></span>implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>* Abstract_base::implementation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get used implementation. </p>
+<dl class="section return"><dt>Returns</dt><dd>implementation </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00051">51</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="aebb83168a14d660a024240bfaad70a80"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebb83168a14d660a024240bfaad70a80">&#9670;&nbsp;</a></span>inv_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_base::inv_map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get inverse map structure. </p>
+<dl class="section return"><dt>Returns</dt><dd>inverse map structure </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00063">63</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a0a16c06aa3591c4daa7872dd0a1510d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a16c06aa3591c4daa7872dd0a1510d8">&#9670;&nbsp;</a></span>map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_base::map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get map structure. </p>
+<dl class="section return"><dt>Returns</dt><dd>map structure </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00075">75</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="ae41eb0b9891cdcfca4ae7df8234a9113"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae41eb0b9891cdcfca4ae7df8234a9113">&#9670;&nbsp;</a></span>set_implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_base::set_implementation </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> &gt;&#160;</td>
+          <td class="paramname"><em>some_implememntation</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set used implementation. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">some_implememntation</td><td>specific implementation for bridge pattern </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00057">57</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a12b49689227a6dd6d0aa55fe273dfae2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12b49689227a6dd6d0aa55fe273dfae2">&#9670;&nbsp;</a></span>set_inv_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_base::set_inv_map </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>list</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set inverse map structure. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">list</td><td>inverse map structure </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00069">69</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="ac83e7d3257c5cadc3285a90801f7a479"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac83e7d3257c5cadc3285a90801f7a479">&#9670;&nbsp;</a></span>set_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_base::set_map </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>list</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set map structure. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">list</td><td>map structure </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00081">81</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a65784b6507975934712e2509e237680a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65784b6507975934712e2509e237680a">&#9670;&nbsp;</a></span>set_target_cloud()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_base::set_target_cloud </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>cloud</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set task cloud. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">cloud</td><td>cloud map </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00106">106</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="ae2031dc21ac6416978f9fe854449287e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2031dc21ac6416978f9fe854449287e">&#9670;&nbsp;</a></span>set_task_space()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_base::set_task_space </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>s_trans</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set task space. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">s_trans</td><td>task space </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00093">93</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="ab7c57b1ac4fb42ab400c0fc08e9aff61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7c57b1ac4fb42ab400c0fc08e9aff61">&#9670;&nbsp;</a></span>target_cloud()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt; &gt;&amp; Abstract_base::target_cloud </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get task cloud. </p>
+<dl class="section return"><dt>Returns</dt><dd>task cloud map </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00100">100</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="ad4b63750f9b890cf99f9187624cc97be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4b63750f9b890cf99f9187624cc97be">&#9670;&nbsp;</a></span>task_space()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;std::pair&lt;<a class="el" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt; &gt; &gt; &gt;&amp; Abstract_base::task_space </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get task space. </p>
+<dl class="section return"><dt>Returns</dt><dd>task space </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00087">87</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a3fa949c8f9fd12d96add87d38810ceef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fa949c8f9fd12d96add87d38810ceef">&#9670;&nbsp;</a></span>write_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_base::write_task </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>write trask </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ab73fdbf60e0d79d8ba4eeca3a894e39e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab73fdbf60e0d79d8ba4eeca3a894e39e">&#9670;&nbsp;</a></span>implementation_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;<a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>&gt; Abstract_base::implementation_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>refined implementation </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00038">38</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a9b80b83e10a75f0421594e46c9b49381"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b80b83e10a75f0421594e46c9b49381">&#9670;&nbsp;</a></span>inv_map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Abstract_base::inv_map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Inversion of reachability map structure. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00034">34</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a589f01126eab356919d97480e30b17ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a589f01126eab356919d97480e30b17ab">&#9670;&nbsp;</a></span>map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Abstract_base::map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reachability map structure of a robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00033">33</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a54d21fd6fe1217c1b065c5b500e3e8d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a54d21fd6fe1217c1b065c5b500e3e8d0">&#9670;&nbsp;</a></span>nh_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::NodeHandle&gt; Abstract_base::nh_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Ros nodehandle object. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00031">31</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a20a272f916415c6d30d6c3af3eb75f33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20a272f916415c6d30d6c3af3eb75f33">&#9670;&nbsp;</a></span>target_cloud_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt; &gt; Abstract_base::target_cloud_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Pointcloud structure, mapped to robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00036">36</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a8c32441b38f2cb24388e8d98fd8fe2bc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c32441b38f2cb24388e8d98fd8fe2bc">&#9670;&nbsp;</a></span>task_space_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;std::pair&lt;<a class="el" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt; &gt; &gt; &gt; Abstract_base::task_space_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Drop-off locations with their grasp orientations, mapped to a robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base_8h_source.html#l00035">35</a> of file <a class="el" href="abstract__base_8h_source.html">abstract_base.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="abstract__base_8h_source.html">abstract_base.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__base__implementation-members.html b/doc/html/classAbstract__base__implementation-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b6d750a38e1bc487eb7998dc774b20d6a3a3f03d
--- /dev/null
+++ b/doc/html/classAbstract__base__implementation-members.html
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_base_implementation Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">inv_map_creation</a>(std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space)=0</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">set_grasp_orientations</a>(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var)=0</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">~Abstract_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__base__implementation.html b/doc/html/classAbstract__base__implementation.html
new file mode 100644
index 0000000000000000000000000000000000000000..192863d043089002db94c612dfc53ef6a48762a6
--- /dev/null
+++ b/doc/html/classAbstract__base__implementation.html
@@ -0,0 +1,220 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_base_implementation Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classAbstract__base__implementation-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_base_implementation Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>abstract base implementation  
+ <a href="classAbstract__base__implementation.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="abstract__base__implementation_8h_source.html">abstract_base_implementation.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_base_implementation:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__base__implementation__inherit__graph.png" border="0" usemap="#Abstract__base__implementation_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__base__implementation_inherit__map" id="Abstract__base__implementation_inherit__map">
+<area shape="rect" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+<area shape="rect" href="classSimple__base__implementation.html" title="refined base implementation" alt="" coords="10,80,226,107"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aefda2aa1684b1d8f5db48e999db2e05b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:aefda2aa1684b1d8f5db48e999db2e05b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base implementation default constructor.  <a href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">More...</a><br /></td></tr>
+<tr class="separator:aefda2aa1684b1d8f5db48e999db2e05b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33d38400729ffe7b9e60cca9c3ddc12f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">inv_map_creation</a> (std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space)=0</td></tr>
+<tr class="memdesc:a33d38400729ffe7b9e60cca9c3ddc12f"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual methode to create inverse map  <a href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">More...</a><br /></td></tr>
+<tr class="separator:a33d38400729ffe7b9e60cca9c3ddc12f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c2ee065ff500f9d588ab967d55d3677"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">set_grasp_orientations</a> (std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var)=0</td></tr>
+<tr class="memdesc:a4c2ee065ff500f9d588ab967d55d3677"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual methode to set grasp orientations  <a href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">More...</a><br /></td></tr>
+<tr class="separator:a4c2ee065ff500f9d588ab967d55d3677"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e51334938ee2afa88fe37b6e9b75690"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">~Abstract_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:a7e51334938ee2afa88fe37b6e9b75690"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base implementation default destructor.  <a href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">More...</a><br /></td></tr>
+<tr class="separator:a7e51334938ee2afa88fe37b6e9b75690"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>abstract base implementation </p>
+<p>abstract implementation for base calculation, including all necessary hook methods that can be called from a template method </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__base__implementation_8h_source.html#l00011">11</a> of file <a class="el" href="abstract__base__implementation_8h_source.html">abstract_base_implementation.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aefda2aa1684b1d8f5db48e999db2e05b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aefda2aa1684b1d8f5db48e999db2e05b">&#9670;&nbsp;</a></span>Abstract_base_implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_base_implementation::Abstract_base_implementation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Abstract base implementation default constructor. </p>
+
+</div>
+</div>
+<a id="a7e51334938ee2afa88fe37b6e9b75690"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e51334938ee2afa88fe37b6e9b75690">&#9670;&nbsp;</a></span>~Abstract_base_implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_base_implementation::~Abstract_base_implementation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Abstract base implementation default destructor. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a33d38400729ffe7b9e60cca9c3ddc12f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33d38400729ffe7b9e60cca9c3ddc12f">&#9670;&nbsp;</a></span>inv_map_creation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_base_implementation::inv_map_creation </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>map</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>inv_map</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>task_space</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual methode to create inverse map </p>
+<p>Manipulates the inv_map vector </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">map</td><td>reference to manipulate member </td></tr>
+    <tr><td class="paramname">inv_map</td><td>reference to manipulate member </td></tr>
+    <tr><td class="paramname">task_space</td><td>reference to manipulate member </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation</a>.</p>
+
+</div>
+</div>
+<a id="a4c2ee065ff500f9d588ab967d55d3677"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c2ee065ff500f9d588ab967d55d3677">&#9670;&nbsp;</a></span>set_grasp_orientations()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_base_implementation::set_grasp_orientations </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual methode to set grasp orientations </p>
+<p>Manipulates the map of grasp orientations of a graspable object, mapped to a robot </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">var</td><td>caller reference to manipulate member </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="abstract__base__implementation_8h_source.html">abstract_base_implementation.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__base__implementation__inherit__graph.map b/doc/html/classAbstract__base__implementation__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..4f25256b6f0393fc7c8220f5a9088777fb226d4f
--- /dev/null
+++ b/doc/html/classAbstract__base__implementation__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Abstract_base_implementation" name="Abstract_base_implementation">
+<area shape="rect" id="node1" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+<area shape="rect" id="node2" href="$classSimple__base__implementation.html" title="refined base implementation" alt="" coords="10,80,226,107"/>
+</map>
diff --git a/doc/html/classAbstract__base__implementation__inherit__graph.md5 b/doc/html/classAbstract__base__implementation__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f7189d9529936be56573f0ab239befb7219a292e
--- /dev/null
+++ b/doc/html/classAbstract__base__implementation__inherit__graph.md5
@@ -0,0 +1 @@
+4129e00b53b1e900bf4bf66180d024f9
\ No newline at end of file
diff --git a/doc/html/classAbstract__base__implementation__inherit__graph.png b/doc/html/classAbstract__base__implementation__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..7d17864a323daf60e9802d20f1a8a293e77cbd0f
Binary files /dev/null and b/doc/html/classAbstract__base__implementation__inherit__graph.png differ
diff --git a/doc/html/classAbstract__base__inherit__graph.map b/doc/html/classAbstract__base__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..08975cfa8dea1a0cb252df3e7042680d291031db
--- /dev/null
+++ b/doc/html/classAbstract__base__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Abstract_base" name="Abstract_base">
+<area shape="rect" id="node1" title="Abstract base class." alt="" coords="5,5,120,32"/>
+<area shape="rect" id="node2" href="$classSimple__base.html" title="refiend base abstraction" alt="" coords="10,80,115,107"/>
+</map>
diff --git a/doc/html/classAbstract__base__inherit__graph.md5 b/doc/html/classAbstract__base__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..dde799bbe0e2d7226d58cd1a76a3b2e37f5c4789
--- /dev/null
+++ b/doc/html/classAbstract__base__inherit__graph.md5
@@ -0,0 +1 @@
+ce675c17e69b6584d01077fd26575aa5
\ No newline at end of file
diff --git a/doc/html/classAbstract__base__inherit__graph.png b/doc/html/classAbstract__base__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..ed627b4322bc521497a38550e07e698a6880ad8d
Binary files /dev/null and b/doc/html/classAbstract__base__inherit__graph.png differ
diff --git a/doc/html/classAbstract__map__loader-members.html b/doc/html/classAbstract__map__loader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..310a45dd714aff0208cf16c99e8cebfe2aa8157e
--- /dev/null
+++ b/doc/html/classAbstract__map__loader-members.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_map_loader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a>()=default</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">base_calculation</a>()=0</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a>(Abstract_strategy *some_stratergy)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a>(std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">set_target_rot</a>(std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;rots)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">strategy</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">target_cloud</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">write_task</a>(Abstract_robot *robot)=0</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">~Abstract_map_loader</a>()=default</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__map__loader.html b/doc/html/classAbstract__map__loader.html
new file mode 100644
index 0000000000000000000000000000000000000000..8da63c730c55c09c8d517360da7bc439e36ba011
--- /dev/null
+++ b/doc/html/classAbstract__map__loader.html
@@ -0,0 +1,721 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_map_loader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__map__loader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_map_loader Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_map_loader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__map__loader__inherit__graph.png" border="0" usemap="#Abstract__map__loader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__map__loader_inherit__map" id="Abstract__map__loader_inherit__map">
+<area shape="rect" title=" " alt="" coords="5,5,165,32"/>
+<area shape="rect" href="classMap__loader.html" title=" " alt="" coords="36,80,135,107"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a408d265bc42bdbb25b2db44b9533e668"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a> ()=default</td></tr>
+<tr class="separator:a408d265bc42bdbb25b2db44b9533e668"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fdca9d4a86d66a712194e409d799eff"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">base_calculation</a> ()=0</td></tr>
+<tr class="separator:a9fdca9d4a86d66a712194e409d799eff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4f75fbdda254f2a506770969cc46d8e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a> ()</td></tr>
+<tr class="separator:af4f75fbdda254f2a506770969cc46d8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13fb2cd6ac1a353192161e053426d7c8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a> ()</td></tr>
+<tr class="separator:a13fb2cd6ac1a353192161e053426d7c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a297e8f8fa66f70678d19d321033eea4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="separator:a297e8f8fa66f70678d19d321033eea4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1edc00738184b6aa4b245727c8ed52ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="separator:a1edc00738184b6aa4b245727c8ed52ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3508478d51dcdf86ed8418006a4dd0d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a> (<a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *some_stratergy)</td></tr>
+<tr class="separator:a3508478d51dcdf86ed8418006a4dd0d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2945aff76228233abb3a89477c013d8a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a> (std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td></tr>
+<tr class="separator:a2945aff76228233abb3a89477c013d8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2adcb4394435282441360fb2310c231b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">set_target_rot</a> (std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;rots)</td></tr>
+<tr class="separator:a2adcb4394435282441360fb2310c231b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab738d6d84071f7b931e2373a7fefc498"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</td></tr>
+<tr class="separator:ab738d6d84071f7b931e2373a7fefc498"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd6b5c362ad38cfe32600ff9f1398bc7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">strategy</a> ()</td></tr>
+<tr class="separator:afd6b5c362ad38cfe32600ff9f1398bc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb73acebcfbfb3a5acb790eb2d96fbd6"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">target_cloud</a> ()</td></tr>
+<tr class="separator:abb73acebcfbfb3a5acb790eb2d96fbd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdd0484ea0507910d37b0eae257b6476"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a> ()</td></tr>
+<tr class="separator:abdd0484ea0507910d37b0eae257b6476"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9772fe2bd594967b8f7b980db442ca5"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a> ()</td></tr>
+<tr class="separator:aa9772fe2bd594967b8f7b980db442ca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb51b1dd09b8689778de1a0b593d3a1f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">write_task</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot)=0</td></tr>
+<tr class="separator:acb51b1dd09b8689778de1a0b593d3a1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b3675673d54d23b1678bd47df4b2273"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">~Abstract_map_loader</a> ()=default</td></tr>
+<tr class="separator:a3b3675673d54d23b1678bd47df4b2273"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a797587fa281f28fde814a052396d90bf"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a> ()</td></tr>
+<tr class="separator:a797587fa281f28fde814a052396d90bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ad43b3e44a4908e0352c3a7c7b26c8347"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a></td></tr>
+<tr class="separator:ad43b3e44a4908e0352c3a7c7b26c8347"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a460481a298b27e411bafcdc584f1f35a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a></td></tr>
+<tr class="separator:a460481a298b27e411bafcdc584f1f35a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18cb3dcb65ee0af86bff355c24814dc3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a></td></tr>
+<tr class="separator:a18cb3dcb65ee0af86bff355c24814dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab0898959888bc50f37690808f9571a8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a></td></tr>
+<tr class="separator:aab0898959888bc50f37690808f9571a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af012c7a4a222097864cbcda7ed58212f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a></td></tr>
+<tr class="separator:af012c7a4a222097864cbcda7ed58212f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c4bd31f9c778a3a5ef7a21ab16f6127"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a></td></tr>
+<tr class="separator:a8c4bd31f9c778a3a5ef7a21ab16f6127"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00024">24</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a408d265bc42bdbb25b2db44b9533e668"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a408d265bc42bdbb25b2db44b9533e668">&#9670;&nbsp;</a></span>Abstract_map_loader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_map_loader::Abstract_map_loader </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3b3675673d54d23b1678bd47df4b2273"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b3675673d54d23b1678bd47df4b2273">&#9670;&nbsp;</a></span>~Abstract_map_loader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_map_loader::~Abstract_map_loader </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a9fdca9d4a86d66a712194e409d799eff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fdca9d4a86d66a712194e409d799eff">&#9670;&nbsp;</a></span>base_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::vector&lt;std::vector&lt;pcl::PointXYZ&gt; &gt; Abstract_map_loader::base_calculation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader</a>.</p>
+
+</div>
+</div>
+<a id="a797587fa281f28fde814a052396d90bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a797587fa281f28fde814a052396d90bf">&#9670;&nbsp;</a></span>create_pcl_box()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; pcl::PointXYZ &gt; Abstract_map_loader::create_pcl_box </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="map__loader_8cpp_source.html#l00116">116</a> of file <a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af4f75fbdda254f2a506770969cc46d8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4f75fbdda254f2a506770969cc46d8e">&#9670;&nbsp;</a></span>inv_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_map_loader::inv_map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00041">41</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a13fb2cd6ac1a353192161e053426d7c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13fb2cd6ac1a353192161e053426d7c8">&#9670;&nbsp;</a></span>map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_map_loader::map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00042">42</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a297e8f8fa66f70678d19d321033eea4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a297e8f8fa66f70678d19d321033eea4d">&#9670;&nbsp;</a></span>set_inv_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_inv_map </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>list</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00043">43</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a1edc00738184b6aa4b245727c8ed52ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1edc00738184b6aa4b245727c8ed52ec">&#9670;&nbsp;</a></span>set_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_map </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>list</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00044">44</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a3508478d51dcdf86ed8418006a4dd0d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3508478d51dcdf86ed8418006a4dd0d9">&#9670;&nbsp;</a></span>set_strategy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_strategy </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *&#160;</td>
+          <td class="paramname"><em>some_stratergy</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00038">38</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a2945aff76228233abb3a89477c013d8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2945aff76228233abb3a89477c013d8a">&#9670;&nbsp;</a></span>set_target_cloud()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_target_cloud </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>cloud</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00049">49</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a2adcb4394435282441360fb2310c231b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2adcb4394435282441360fb2310c231b">&#9670;&nbsp;</a></span>set_target_rot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_target_rot </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>rots</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00048">48</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="ab738d6d84071f7b931e2373a7fefc498"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab738d6d84071f7b931e2373a7fefc498">&#9670;&nbsp;</a></span>set_task_grasps()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_map_loader::set_task_grasps </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>lists_in_list</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00045">45</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="afd6b5c362ad38cfe32600ff9f1398bc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd6b5c362ad38cfe32600ff9f1398bc7">&#9670;&nbsp;</a></span>strategy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a>* Abstract_map_loader::strategy </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00039">39</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="abb73acebcfbfb3a5acb790eb2d96fbd6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb73acebcfbfb3a5acb790eb2d96fbd6">&#9670;&nbsp;</a></span>target_cloud()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt; &gt;&amp; Abstract_map_loader::target_cloud </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00050">50</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="abdd0484ea0507910d37b0eae257b6476"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abdd0484ea0507910d37b0eae257b6476">&#9670;&nbsp;</a></span>target_rot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt; &gt; &gt;&amp; Abstract_map_loader::target_rot </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00047">47</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="aa9772fe2bd594967b8f7b980db442ca5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9772fe2bd594967b8f7b980db442ca5">&#9670;&nbsp;</a></span>task_grasps()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;tf2::Transform&gt; &gt;&amp; Abstract_map_loader::task_grasps </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00046">46</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="acb51b1dd09b8689778de1a0b593d3a1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb51b1dd09b8689778de1a0b593d3a1f">&#9670;&nbsp;</a></span>write_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_map_loader::write_task </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ad43b3e44a4908e0352c3a7c7b26c8347"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad43b3e44a4908e0352c3a7c7b26c8347">&#9670;&nbsp;</a></span>inv_map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Abstract_map_loader::inv_map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00026">26</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a460481a298b27e411bafcdc584f1f35a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a460481a298b27e411bafcdc584f1f35a">&#9670;&nbsp;</a></span>map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Abstract_map_loader::map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00027">27</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a18cb3dcb65ee0af86bff355c24814dc3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18cb3dcb65ee0af86bff355c24814dc3">&#9670;&nbsp;</a></span>strategy_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a>* Abstract_map_loader::strategy_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00032">32</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="aab0898959888bc50f37690808f9571a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab0898959888bc50f37690808f9571a8">&#9670;&nbsp;</a></span>target_cloud_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt; &gt; Abstract_map_loader::target_cloud_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00030">30</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="af012c7a4a222097864cbcda7ed58212f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af012c7a4a222097864cbcda7ed58212f">&#9670;&nbsp;</a></span>target_rot_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt; &gt; &gt; Abstract_map_loader::target_rot_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00029">29</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<a id="a8c4bd31f9c778a3a5ef7a21ab16f6127"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c4bd31f9c778a3a5ef7a21ab16f6127">&#9670;&nbsp;</a></span>task_grasps_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;tf2::Transform&gt; &gt; Abstract_map_loader::task_grasps_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__map__loader_8h_source.html#l00028">28</a> of file <a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="abstract__map__loader_8h_source.html">abstract_map_loader.h</a></li>
+<li><a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__map__loader__inherit__graph.map b/doc/html/classAbstract__map__loader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..0a1981a2f1a8b63419c3944f7a3fbc4ced1d582a
--- /dev/null
+++ b/doc/html/classAbstract__map__loader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Abstract_map_loader" name="Abstract_map_loader">
+<area shape="rect" id="node1" title=" " alt="" coords="5,5,165,32"/>
+<area shape="rect" id="node2" href="$classMap__loader.html" title=" " alt="" coords="36,80,135,107"/>
+</map>
diff --git a/doc/html/classAbstract__map__loader__inherit__graph.md5 b/doc/html/classAbstract__map__loader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c8c6071469c931107a46bda45a1a2ca4b69ff990
--- /dev/null
+++ b/doc/html/classAbstract__map__loader__inherit__graph.md5
@@ -0,0 +1 @@
+f9f35fa5b3705caf9e5c29bded557185
\ No newline at end of file
diff --git a/doc/html/classAbstract__map__loader__inherit__graph.png b/doc/html/classAbstract__map__loader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..d0bc3f295a3431c6745dec79d53b4e3ea817f2c4
Binary files /dev/null and b/doc/html/classAbstract__map__loader__inherit__graph.png differ
diff --git a/doc/html/classAbstract__mediator-members.html b/doc/html/classAbstract__mediator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..bccf944dcde68bb32aa6c79b3d0475d92b28a163
--- /dev/null
+++ b/doc/html/classAbstract__mediator-members.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_mediator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a>(const int &amp;robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a>(const int &amp;robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a>(Abstract_robot *robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">connect_robots</a>(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a>()=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a>()=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">set_wings</a>(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__mediator.html b/doc/html/classAbstract__mediator.html
new file mode 100644
index 0000000000000000000000000000000000000000..723e69a7c604c7076ee9bc46ef66cd78b0428001
--- /dev/null
+++ b/doc/html/classAbstract__mediator.html
@@ -0,0 +1,1269 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_mediator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__mediator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_mediator Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Abstract mediator.  
+ <a href="classAbstract__mediator.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="impl_2abstract__mediator_8h_source.html">abstract_mediator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__mediator__inherit__graph.png" border="0" usemap="#Abstract__mediator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__mediator_inherit__map" id="Abstract__mediator_inherit__map">
+<area shape="rect" title="Abstract mediator." alt="" coords="196,5,339,32"/>
+<area shape="rect" href="classBase__calculation__mediator.html" title="Concrete Mediator." alt="" coords="5,80,204,107"/>
+<area shape="rect" href="classMediator.html" title=" " alt="" coords="227,80,307,107"/>
+<area shape="rect" href="classMoveit__mediator.html" title=" " alt="" coords="331,80,465,107"/>
+<area shape="rect" href="classMoveit__grasp__mediator.html" title=" " alt="" coords="310,155,486,181"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a724fb5c020cca45732464f0227c854b6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a724fb5c020cca45732464f0227c854b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator constructor.  <a href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">More...</a><br /></td></tr>
+<tr class="separator:a724fb5c020cca45732464f0227c854b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b339e1ffa0b206129cc11fa300b217"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:a42b339e1ffa0b206129cc11fa300b217"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafb2967bb33e9cc4ba0dcf54f29be144"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a> (std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</td></tr>
+<tr class="separator:aafb2967bb33e9cc4ba0dcf54f29be144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafb2967bb33e9cc4ba0dcf54f29be144"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a> (std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</td></tr>
+<tr class="memdesc:aafb2967bb33e9cc4ba0dcf54f29be144"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual methode to build specific wings  <a href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">More...</a><br /></td></tr>
+<tr class="separator:aafb2967bb33e9cc4ba0dcf54f29be144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7dbd0e2d480c9a496aa2fb77a14ab592"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a> (const int &amp;robot)=0</td></tr>
+<tr class="separator:a7dbd0e2d480c9a496aa2fb77a14ab592"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7dbd0e2d480c9a496aa2fb77a14ab592"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a> (const int &amp;robot)=0</td></tr>
+<tr class="memdesc:a7dbd0e2d480c9a496aa2fb77a14ab592"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual robot collision checker  <a href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">More...</a><br /></td></tr>
+<tr class="separator:a7dbd0e2d480c9a496aa2fb77a14ab592"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c102b5e272139492ab04ce0d4e43234"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot)=0</td></tr>
+<tr class="separator:a0c102b5e272139492ab04ce0d4e43234"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec722e2a7493b29b04b613b800883cf9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">connect_robots</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; robot)=0</td></tr>
+<tr class="memdesc:aec722e2a7493b29b04b613b800883cf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual robot connecting methode  <a href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">More...</a><br /></td></tr>
+<tr class="separator:aec722e2a7493b29b04b613b800883cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="memdesc:ad651113a7bd5059643177c7b5fc08b8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dirname.  <a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">More...</a><br /></td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0127bf58ba90cd82b39b0dfe4dfbe88a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a0127bf58ba90cd82b39b0dfe4dfbe88a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcd1ada33f056dadda3dc17a6299b731"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a> ()=0</td></tr>
+<tr class="separator:adcd1ada33f056dadda3dc17a6299b731"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcd1ada33f056dadda3dc17a6299b731"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a> ()=0</td></tr>
+<tr class="memdesc:adcd1ada33f056dadda3dc17a6299b731"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual mediate methode  <a href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">More...</a><br /></td></tr>
+<tr class="separator:adcd1ada33f056dadda3dc17a6299b731"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a4028042141d35f7429f92db32599c2"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a> ()</td></tr>
+<tr class="separator:a9a4028042141d35f7429f92db32599c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2fc1c6243fcb68ec2daf7bf52e17a4"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a> ()</td></tr>
+<tr class="memdesc:ada2fc1c6243fcb68ec2daf7bf52e17a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get result_vector.  <a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">More...</a><br /></td></tr>
+<tr class="separator:ada2fc1c6243fcb68ec2daf7bf52e17a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24f9a262c71f04f66550da4f61746e62"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a> ()</td></tr>
+<tr class="separator:a24f9a262c71f04f66550da4f61746e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac905db346790f6bac814cdb7cd1f268d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a> ()</td></tr>
+<tr class="memdesc:ac905db346790f6bac814cdb7cd1f268d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robots.  <a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">More...</a><br /></td></tr>
+<tr class="separator:ac905db346790f6bac814cdb7cd1f268d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="memdesc:a64323b190e965287422f7b840bc1b95f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set dirname.  <a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">More...</a><br /></td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e37e26ac0e75fadb103bc50285408"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="memdesc:aa12e37e26ac0e75fadb103bc50285408"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set result vector.  <a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">More...</a><br /></td></tr>
+<tr class="separator:aa12e37e26ac0e75fadb103bc50285408"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45f051cc8b3816677c638f805e805838"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a> (std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="separator:a45f051cc8b3816677c638f805e805838"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92b5d1cb508826454ae3ea0e5cbf5f2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">set_wings</a> (std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;wbp)=0</td></tr>
+<tr class="separator:af92b5d1cb508826454ae3ea0e5cbf5f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="memdesc:a26d47b6d6d64a8eb4b096fcb5f78b389"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloud converter.  <a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">More...</a><br /></td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9838c41eeb97aef668cd7213f0e2e9a6"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a> ()</td></tr>
+<tr class="separator:a9838c41eeb97aef668cd7213f0e2e9a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525894d2f6a888163c9de63093b2bd6c"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a> ()</td></tr>
+<tr class="memdesc:a525894d2f6a888163c9de63093b2bd6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wings.  <a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">More...</a><br /></td></tr>
+<tr class="separator:a525894d2f6a888163c9de63093b2bd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ad4565f4b98c689289ddda9e7507736ae"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td></tr>
+<tr class="memdesc:ad4565f4b98c689289ddda9e7507736ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirname of the reference protobuff.  <a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">More...</a><br /></td></tr>
+<tr class="separator:ad4565f4b98c689289ddda9e7507736ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47ae440332d8744b368f6f95a84daf2a"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td></tr>
+<tr class="memdesc:a47ae440332d8744b368f6f95a84daf2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">More...</a><br /></td></tr>
+<tr class="separator:a47ae440332d8744b368f6f95a84daf2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78a9e79c0a97238c7d76ec1a3cc7349c"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td></tr>
+<tr class="separator:a78a9e79c0a97238c7d76ec1a3cc7349c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77682034ad695305a6781b53af93d05e"><td class="memItemLeft" align="right" valign="top">ros::Publisher *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td></tr>
+<tr class="separator:a77682034ad695305a6781b53af93d05e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4580d0c30a62cc91203b950694f98e98"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td></tr>
+<tr class="memdesc:a4580d0c30a62cc91203b950694f98e98"><td class="mdescLeft">&#160;</td><td class="mdescRight">total bound a workspace  <a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">More...</a><br /></td></tr>
+<tr class="separator:a4580d0c30a62cc91203b950694f98e98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a48fc344129cd16dc0f20be2d9368ab"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td></tr>
+<tr class="separator:a9a48fc344129cd16dc0f20be2d9368ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4458d27f8d22f7ff58dc8191e1019e5a"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td></tr>
+<tr class="memdesc:a4458d27f8d22f7ff58dc8191e1019e5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result_vector of base positions linked to robot.  <a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">More...</a><br /></td></tr>
+<tr class="separator:a4458d27f8d22f7ff58dc8191e1019e5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66416f41c207636fcf0b5223c2f70061"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td></tr>
+<tr class="separator:a66416f41c207636fcf0b5223c2f70061"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69df414af025faf785c9034633240282"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td></tr>
+<tr class="memdesc:a69df414af025faf785c9034633240282"><td class="mdescLeft">&#160;</td><td class="mdescRight">Robots agents.  <a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">More...</a><br /></td></tr>
+<tr class="separator:a69df414af025faf785c9034633240282"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e0b0dc5a154ad28d68f58500234d56"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td></tr>
+<tr class="memdesc:a25e0b0dc5a154ad28d68f58500234d56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task_space reader which provides drop off positions.  <a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">More...</a><br /></td></tr>
+<tr class="separator:a25e0b0dc5a154ad28d68f58500234d56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td></tr>
+<tr class="separator:ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b75b44d1f17f2d52c5e6171c13456b"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td></tr>
+<tr class="separator:a85b75b44d1f17f2d52c5e6171c13456b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Abstract mediator. </p>
+<p><a class="el" href="classMediator.html">Mediator</a> abstraction which takes care of robot abstractions </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00033">33</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a42b339e1ffa0b206129cc11fa300b217"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42b339e1ffa0b206129cc11fa300b217">&#9670;&nbsp;</a></span>Abstract_mediator() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_mediator::Abstract_mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt;&#160;</td>
+          <td class="paramname"><em>objects</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">ros::Publisher *&#160;</td>
+          <td class="paramname"><em>pub</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00048">48</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a724fb5c020cca45732464f0227c854b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a724fb5c020cca45732464f0227c854b6">&#9670;&nbsp;</a></span>Abstract_mediator() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_mediator::Abstract_mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Abstract mediator constructor. </p>
+<p>initializes task_space reader </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>Ros nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8cpp_source.html#l00003">3</a> of file <a class="el" href="mediator_2abstract__mediator_8cpp_source.html">mediator/abstract_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aafb2967bb33e9cc4ba0dcf54f29be144"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafb2967bb33e9cc4ba0dcf54f29be144">&#9670;&nbsp;</a></span>build_wings() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::build_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::bitset&lt; 3 &gt; &amp;&#160;</td>
+          <td class="paramname"><em>wing</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator</a>, <a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator</a>, and <a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator</a>.</p>
+
+</div>
+</div>
+<a id="aafb2967bb33e9cc4ba0dcf54f29be144"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafb2967bb33e9cc4ba0dcf54f29be144">&#9670;&nbsp;</a></span>build_wings() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::build_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::bitset&lt; 3 &gt; &amp;&#160;</td>
+          <td class="paramname"><em>wing</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual methode to build specific wings </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">wing</td><td>bitmap showing which wing should be build </td></tr>
+    <tr><td class="paramname">robot</td><td><a class="el" href="classRobot.html">Robot</a> index </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator</a>, <a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator</a>, and <a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator</a>.</p>
+
+</div>
+</div>
+<a id="a7dbd0e2d480c9a496aa2fb77a14ab592"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7dbd0e2d480c9a496aa2fb77a14ab592">&#9670;&nbsp;</a></span>check_collision() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual bool Abstract_mediator::check_collision </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator</a>, <a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator</a>, and <a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="a7dbd0e2d480c9a496aa2fb77a14ab592"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7dbd0e2d480c9a496aa2fb77a14ab592">&#9670;&nbsp;</a></span>check_collision() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual bool Abstract_mediator::check_collision </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual robot collision checker </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td><a class="el" href="classRobot.html">Robot</a> index </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator</a>, <a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator</a>, and <a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="a0c102b5e272139492ab04ce0d4e43234"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c102b5e272139492ab04ce0d4e43234">&#9670;&nbsp;</a></span>connect_robots() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator</a>, <a class="el" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator</a>, and <a class="el" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="aec722e2a7493b29b04b613b800883cf9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec722e2a7493b29b04b613b800883cf9">&#9670;&nbsp;</a></span>connect_robots() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual robot connecting methode </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td>robot decorator </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator</a>.</p>
+
+</div>
+</div>
+<a id="ad651113a7bd5059643177c7b5fc08b8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad651113a7bd5059643177c7b5fc08b8d">&#9670;&nbsp;</a></span>dirname() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Abstract_mediator::dirname </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00058">58</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad651113a7bd5059643177c7b5fc08b8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad651113a7bd5059643177c7b5fc08b8d">&#9670;&nbsp;</a></span>dirname() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Abstract_mediator::dirname </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get dirname. </p>
+<dl class="section return"><dt>Returns</dt><dd>dirname </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00086">86</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a0127bf58ba90cd82b39b0dfe4dfbe88a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0127bf58ba90cd82b39b0dfe4dfbe88a">&#9670;&nbsp;</a></span>generate_Ground()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; pcl::PointXYZ &gt; Abstract_mediator::generate_Ground </td>
+          <td>(</td>
+          <td class="paramtype">const tf2::Vector3&#160;</td>
+          <td class="paramname"><em>origin</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const float&#160;</td>
+          <td class="paramname"><em>diameter</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>resolution</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8cpp_source.html#l00004">4</a> of file <a class="el" href="impl_2abstract__mediator_8cpp_source.html">impl/abstract_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="adcd1ada33f056dadda3dc17a6299b731"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcd1ada33f056dadda3dc17a6299b731">&#9670;&nbsp;</a></span>mediate() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator</a>, <a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator</a>, <a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator</a>, and <a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="adcd1ada33f056dadda3dc17a6299b731"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcd1ada33f056dadda3dc17a6299b731">&#9670;&nbsp;</a></span>mediate() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual mediate methode </p>
+
+<p>Implemented in <a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator</a>, <a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator</a>, <a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator</a>, and <a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="a9a4028042141d35f7429f92db32599c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a4028042141d35f7429f92db32599c2">&#9670;&nbsp;</a></span>result_vector() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;pcl::PointXYZ&gt; &gt;&amp; Abstract_mediator::result_vector </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00053">53</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ada2fc1c6243fcb68ec2daf7bf52e17a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ada2fc1c6243fcb68ec2daf7bf52e17a4">&#9670;&nbsp;</a></span>result_vector() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt; &gt;&amp; Abstract_mediator::result_vector </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get result_vector. </p>
+<dl class="section return"><dt>Returns</dt><dd>result_vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00068">68</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a24f9a262c71f04f66550da4f61746e62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24f9a262c71f04f66550da4f61746e62">&#9670;&nbsp;</a></span>robots() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot.html">Abstract_robot</a>*&gt; Abstract_mediator::robots </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00054">54</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ac905db346790f6bac814cdb7cd1f268d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac905db346790f6bac814cdb7cd1f268d">&#9670;&nbsp;</a></span>robots() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>&gt; &gt;&amp; Abstract_mediator::robots </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get robots. </p>
+<dl class="section return"><dt>Returns</dt><dd>robots as decorators </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00074">74</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a64323b190e965287422f7b840bc1b95f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64323b190e965287422f7b840bc1b95f">&#9670;&nbsp;</a></span>set_dirname() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_mediator::set_dirname </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>dirn</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00057">57</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a64323b190e965287422f7b840bc1b95f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64323b190e965287422f7b840bc1b95f">&#9670;&nbsp;</a></span>set_dirname() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_mediator::set_dirname </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>dirn</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set dirname. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dirn</td><td>new dirname </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00080">80</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="aa12e37e26ac0e75fadb103bc50285408"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa12e37e26ac0e75fadb103bc50285408">&#9670;&nbsp;</a></span>set_result_vector() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_mediator::set_result_vector </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>res</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set result vector. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">res</td><td>result vector </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00056">56</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a45f051cc8b3816677c638f805e805838"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45f051cc8b3816677c638f805e805838">&#9670;&nbsp;</a></span>set_result_vector() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_mediator::set_result_vector </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>res</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00051">51</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="af92b5d1cb508826454ae3ea0e5cbf5f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af92b5d1cb508826454ae3ea0e5cbf5f2">&#9670;&nbsp;</a></span>set_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_mediator::set_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>wbp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator</a>, and <a class="el" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator</a>.</p>
+
+</div>
+</div>
+<a id="a26d47b6d6d64a8eb4b096fcb5f78b389"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26d47b6d6d64a8eb4b096fcb5f78b389">&#9670;&nbsp;</a></span>vector_to_cloud() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr Abstract_mediator::vector_to_cloud </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; pcl::PointXYZ &gt; &amp;&#160;</td>
+          <td class="paramname"><em>vector</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8cpp_source.html#l00016">16</a> of file <a class="el" href="impl_2abstract__mediator_8cpp_source.html">impl/abstract_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a26d47b6d6d64a8eb4b096fcb5f78b389"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26d47b6d6d64a8eb4b096fcb5f78b389">&#9670;&nbsp;</a></span>vector_to_cloud() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr Abstract_mediator::vector_to_cloud </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; pcl::PointXYZ &gt; &amp;&#160;</td>
+          <td class="paramname"><em>vector</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Cloud converter. </p>
+<p>Converts vector of pcl::PointXYZ to a pcl::Pointcloud </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">vector</td><td>Vector of XYZPoints </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointcloud </dd></dl>
+
+</div>
+</div>
+<a id="a9838c41eeb97aef668cd7213f0e2e9a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9838c41eeb97aef668cd7213f0e2e9a6">&#9670;&nbsp;</a></span>wings() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt; &gt; Abstract_mediator::wings </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00052">52</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a525894d2f6a888163c9de63093b2bd6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a525894d2f6a888163c9de63093b2bd6c">&#9670;&nbsp;</a></span>wings() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt; &gt;&amp; Abstract_mediator::wings </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get wings. </p>
+<dl class="section return"><dt>Returns</dt><dd>map of panals linked to their robots </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00062">62</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ad4565f4b98c689289ddda9e7507736ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4565f4b98c689289ddda9e7507736ae">&#9670;&nbsp;</a></span>dirname_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Abstract_mediator::dirname_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Dirname of the reference protobuff. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00041">41</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a47ae440332d8744b368f6f95a84daf2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a47ae440332d8744b368f6f95a84daf2a">&#9670;&nbsp;</a></span>nh_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::NodeHandle&gt; Abstract_mediator::nh_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Ros nodehandle object. </p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00035">35</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a78a9e79c0a97238c7d76ec1a3cc7349c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78a9e79c0a97238c7d76ec1a3cc7349c">&#9670;&nbsp;</a></span>objects_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;tf2::Transform&gt; &gt; Abstract_mediator::objects_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00036">36</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a77682034ad695305a6781b53af93d05e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77682034ad695305a6781b53af93d05e">&#9670;&nbsp;</a></span>pub_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">ros::Publisher* Abstract_mediator::pub_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00038">38</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a4580d0c30a62cc91203b950694f98e98"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4580d0c30a62cc91203b950694f98e98">&#9670;&nbsp;</a></span>relative_bounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt; Abstract_mediator::relative_bounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>total bound a workspace </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00037">37</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9a48fc344129cd16dc0f20be2d9368ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a48fc344129cd16dc0f20be2d9368ab">&#9670;&nbsp;</a></span>result_vector_ <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;pcl::PointXYZ&gt; &gt; Abstract_mediator::result_vector_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00039">39</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a4458d27f8d22f7ff58dc8191e1019e5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4458d27f8d22f7ff58dc8191e1019e5a">&#9670;&nbsp;</a></span>result_vector_ <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt; &gt; Abstract_mediator::result_vector_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Result_vector of base positions linked to robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00040">40</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a66416f41c207636fcf0b5223c2f70061"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66416f41c207636fcf0b5223c2f70061">&#9670;&nbsp;</a></span>robots_ <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot.html">Abstract_robot</a>*&gt; Abstract_mediator::robots_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00035">35</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a69df414af025faf785c9034633240282"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69df414af025faf785c9034633240282">&#9670;&nbsp;</a></span>robots_ <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>&gt; &gt; Abstract_mediator::robots_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Robots agents. </p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00037">37</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a25e0b0dc5a154ad28d68f58500234d56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25e0b0dc5a154ad28d68f58500234d56">&#9670;&nbsp;</a></span>task_space_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classTs__reader.html">Ts_reader</a>&gt; Abstract_mediator::task_space_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Task_space reader which provides drop off positions. </p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00036">36</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae7e91c3c5ac234ee1d1bd2d7d6128bc8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">&#9670;&nbsp;</a></span>wings_ <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt; &gt; Abstract_mediator::wings_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00040">40</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a85b75b44d1f17f2d52c5e6171c13456b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85b75b44d1f17f2d52c5e6171c13456b">&#9670;&nbsp;</a></span>wings_ <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt; &gt; Abstract_mediator::wings_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_2abstract__mediator_8h_source.html#l00041">41</a> of file <a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a></li>
+<li><a class="el" href="impl_2abstract__mediator_8cpp_source.html">impl/abstract_mediator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__mediator__inherit__graph.map b/doc/html/classAbstract__mediator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..2fe3d1ae23ff90a39a7986a5d6d5a0d36dbc019d
--- /dev/null
+++ b/doc/html/classAbstract__mediator__inherit__graph.map
@@ -0,0 +1,7 @@
+<map id="Abstract_mediator" name="Abstract_mediator">
+<area shape="rect" id="node1" title="Abstract mediator." alt="" coords="196,5,339,32"/>
+<area shape="rect" id="node2" href="$classBase__calculation__mediator.html" title="Concrete Mediator." alt="" coords="5,80,204,107"/>
+<area shape="rect" id="node3" href="$classMediator.html" title=" " alt="" coords="227,80,307,107"/>
+<area shape="rect" id="node4" href="$classMoveit__mediator.html" title=" " alt="" coords="331,80,465,107"/>
+<area shape="rect" id="node5" href="$classMoveit__grasp__mediator.html" title=" " alt="" coords="310,155,486,181"/>
+</map>
diff --git a/doc/html/classAbstract__mediator__inherit__graph.md5 b/doc/html/classAbstract__mediator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..225f67b92dd270fd3c5aef69201c7ffb9ec00315
--- /dev/null
+++ b/doc/html/classAbstract__mediator__inherit__graph.md5
@@ -0,0 +1 @@
+3e2b38730489ee2a2ece35eb83def32b
\ No newline at end of file
diff --git a/doc/html/classAbstract__mediator__inherit__graph.png b/doc/html/classAbstract__mediator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..17f23221d53826912b7f22506f391717400b7359
Binary files /dev/null and b/doc/html/classAbstract__mediator__inherit__graph.png differ
diff --git a/doc/html/classAbstract__param__reader-members.html b/doc/html/classAbstract__param__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..8adc1469bcd3ded00a8ab25e702f711a5497ca8f
--- /dev/null
+++ b/doc/html/classAbstract__param__reader-members.html
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_param_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">read</a>()=0</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__param__reader.html b/doc/html/classAbstract__param__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..79df31e6c87680d2511095a7f668eae1ad61055c
--- /dev/null
+++ b/doc/html/classAbstract__param__reader.html
@@ -0,0 +1,207 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_param_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__param__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_param_reader Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Abstract ROS-Param reader class.  
+ <a href="classAbstract__param__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_param_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__param__reader__inherit__graph.png" border="0" usemap="#Abstract__param__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__param__reader_inherit__map" id="Abstract__param__reader_inherit__map">
+<area shape="rect" title="Abstract ROS&#45;Param reader class." alt="" coords="5,157,180,184"/>
+<area shape="rect" href="classCuboid__reader.html" title="Cuboid reader." alt="" coords="243,5,359,32"/>
+<area shape="rect" href="classJob__reader.html" title="Job reader." alt="" coords="255,56,346,83"/>
+<area shape="rect" href="classMap__reader.html" title="Map reader." alt="" coords="251,107,350,133"/>
+<area shape="rect" href="classRobot__reader.html" title="Robot reader." alt="" coords="246,157,355,184"/>
+<area shape="rect" href="classTask__space__reader.html" title="Task space reader." alt="" coords="228,208,373,235"/>
+<area shape="rect" href="classTs__reader.html" title="TS reader." alt="" coords="259,259,343,285"/>
+<area shape="rect" href="classWing__reader.html" title="Wing reader." alt="" coords="249,309,353,336"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a441ed47eee393cc772f19d4be923e34d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">read</a> ()=0</td></tr>
+<tr class="memdesc:a441ed47eee393cc772f19d4be923e34d"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual read methode  <a href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">More...</a><br /></td></tr>
+<tr class="separator:a441ed47eee393cc772f19d4be923e34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Abstract ROS-Param reader class. </p>
+<p>Class concerned with reading information from ROS-Param server. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00027">27</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a734c0833347f6d686f280031b3219de0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a734c0833347f6d686f280031b3219de0">&#9670;&nbsp;</a></span>Abstract_param_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_param_reader::Abstract_param_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Abstract param reader constructor. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS Nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00036">36</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a107d1be3e232087e003820c9a924b2dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a107d1be3e232087e003820c9a924b2dd">&#9670;&nbsp;</a></span>float_of()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float Abstract_param_reader::float_of </td>
+          <td>(</td>
+          <td class="paramtype">XmlRpc::XmlRpcValue &amp;&#160;</td>
+          <td class="paramname"><em>val</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Xmlrpc parser. </p>
+<p>converts param to float value </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">val</td><td>XmlRPCValue reference from Nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="abstract__param__reader_8cpp_source.html">abstract_param_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a441ed47eee393cc772f19d4be923e34d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a441ed47eee393cc772f19d4be923e34d">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_param_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>pure virtual read methode </p>
+
+<p>Implemented in <a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader</a>, <a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader</a>, <a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader</a>, <a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader</a>, <a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader</a>, <a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader</a>, and <a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ac68dac5298b2c065773ba8412a134949"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac68dac5298b2c065773ba8412a134949">&#9670;&nbsp;</a></span>nh_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::NodeHandle&gt; Abstract_param_reader::nh_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>ROS Nodehandle. </p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00029">29</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a></li>
+<li><a class="el" href="abstract__param__reader_8cpp_source.html">abstract_param_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__param__reader__inherit__graph.map b/doc/html/classAbstract__param__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..e3aecd517ee46690ee1010141b46d417e311a7e7
--- /dev/null
+++ b/doc/html/classAbstract__param__reader__inherit__graph.map
@@ -0,0 +1,10 @@
+<map id="Abstract_param_reader" name="Abstract_param_reader">
+<area shape="rect" id="node1" title="Abstract ROS&#45;Param reader class." alt="" coords="5,157,180,184"/>
+<area shape="rect" id="node2" href="$classCuboid__reader.html" title="Cuboid reader." alt="" coords="243,5,359,32"/>
+<area shape="rect" id="node3" href="$classJob__reader.html" title="Job reader." alt="" coords="255,56,346,83"/>
+<area shape="rect" id="node4" href="$classMap__reader.html" title="Map reader." alt="" coords="251,107,350,133"/>
+<area shape="rect" id="node5" href="$classRobot__reader.html" title="Robot reader." alt="" coords="246,157,355,184"/>
+<area shape="rect" id="node6" href="$classTask__space__reader.html" title="Task space reader." alt="" coords="228,208,373,235"/>
+<area shape="rect" id="node7" href="$classTs__reader.html" title="TS reader." alt="" coords="259,259,343,285"/>
+<area shape="rect" id="node8" href="$classWing__reader.html" title="Wing reader." alt="" coords="249,309,353,336"/>
+</map>
diff --git a/doc/html/classAbstract__param__reader__inherit__graph.md5 b/doc/html/classAbstract__param__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..cc75735715826d3d0f0482a9d4a6b86245634bd7
--- /dev/null
+++ b/doc/html/classAbstract__param__reader__inherit__graph.md5
@@ -0,0 +1 @@
+00ed683f5f0b1f181b736c9687114df1
\ No newline at end of file
diff --git a/doc/html/classAbstract__param__reader__inherit__graph.png b/doc/html/classAbstract__param__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..a3cb20367a75d4289448f2d73e1e9071c75de9c7
Binary files /dev/null and b/doc/html/classAbstract__param__reader__inherit__graph.png differ
diff --git a/doc/html/classAbstract__robot-members.html b/doc/html/classAbstract__robot-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b55cccb4c6b62a1d3742f36aff36d72f2086051a
--- /dev/null
+++ b/doc/html/classAbstract__robot-members.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_robot Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__robot.html">Abstract_robot</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;b)=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;b)=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot.html b/doc/html/classAbstract__robot.html
new file mode 100644
index 0000000000000000000000000000000000000000..cbe2feda3cd210584594fb0610525282b6c7ab1e
--- /dev/null
+++ b/doc/html/classAbstract__robot.html
@@ -0,0 +1,1268 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_robot Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__robot-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_robot Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="impl_2abstract__robot_8h_source.html">abstract_robot.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__robot__inherit__graph.png" border="0" usemap="#Abstract__robot_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__robot_inherit__map" id="Abstract__robot_inherit__map">
+<area shape="rect" title=" " alt="" coords="203,5,320,32"/>
+<area shape="rect" href="classAbstract__robot__decorator.html" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" href="classCeti__robot.html" title="Concrete Ceti&#45;Robot." alt="" coords="217,80,306,107"/>
+<area shape="rect" href="classRobot.html" title=" " alt="" coords="330,80,390,107"/>
+<area shape="rect" href="classPanda__decorator.html" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" href="classMoveit__robot.html" title=" " alt="" coords="306,155,414,181"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52c63e180b0a31cd9b97b824eb1b5c22"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a> ()=0</td></tr>
+<tr class="separator:a52c63e180b0a31cd9b97b824eb1b5c22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb08dc2fa1ecdad08544fb77ff60d78e"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;b)=0</td></tr>
+<tr class="separator:aeb08dc2fa1ecdad08544fb77ff60d78e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb08dc2fa1ecdad08544fb77ff60d78e"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;b)=0</td></tr>
+<tr class="separator:aeb08dc2fa1ecdad08544fb77ff60d78e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a5d8cd75f0aa634022f09d88066d313"><td class="memItemLeft" align="right" valign="top">virtual std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a> ()=0</td></tr>
+<tr class="separator:a1a5d8cd75f0aa634022f09d88066d313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfcaa13dd3824464426f0557ec2e360d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a> ()=0</td></tr>
+<tr class="separator:acfcaa13dd3824464426f0557ec2e360d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfcaa13dd3824464426f0557ec2e360d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a> ()=0</td></tr>
+<tr class="separator:acfcaa13dd3824464426f0557ec2e360d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62093041e9154e06ed573a42a76cc778"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a> ()=0</td></tr>
+<tr class="separator:a62093041e9154e06ed573a42a76cc778"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7a230da2f4551f707557a4f5fa447ac"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a> ()=0</td></tr>
+<tr class="separator:af7a230da2f4551f707557a4f5fa447ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13949665d4f8ac53aadc357883b301da"><td class="memItemLeft" align="right" valign="top">virtual tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a> ()=0</td></tr>
+<tr class="separator:a13949665d4f8ac53aadc357883b301da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3e4f92f97f4a55fe9cb7196024fe30a"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a> ()=0</td></tr>
+<tr class="separator:ae3e4f92f97f4a55fe9cb7196024fe30a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade9a130588307d054c1d68e861a01717"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</td></tr>
+<tr class="separator:ade9a130588307d054c1d68e861a01717"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade9a130588307d054c1d68e861a01717"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</td></tr>
+<tr class="separator:ade9a130588307d054c1d68e861a01717"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00025">25</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a704bd9522c6fdaff61cc7584ef20850c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a704bd9522c6fdaff61cc7584ef20850c">&#9670;&nbsp;</a></span>Abstract_robot() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot::Abstract_robot </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00038">38</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ac94e9d3520fdbcd027682226f4b0be8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac94e9d3520fdbcd027682226f4b0be8f">&#9670;&nbsp;</a></span>Abstract_robot() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot::Abstract_robot </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot_8cpp_source.html#l00004">4</a> of file <a class="el" href="abstract__robot_8cpp_source.html">abstract_robot.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a1402d06f3393679d585376716cc2a534"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1402d06f3393679d585376716cc2a534">&#9670;&nbsp;</a></span>area_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float Abstract_robot::area_calculation </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>A</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>B</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>C</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Triangle area calculator. </p>
+<p>Calculates triangle with 3 vertices </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">A</td><td>pose of triagnel vertice </td></tr>
+    <tr><td class="paramname">B</td><td>pose of triagnel vertice </td></tr>
+    <tr><td class="paramname">C</td><td>pose of triagnel vertice </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>float triangle area </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot_8cpp_source.html#l00022">22</a> of file <a class="el" href="abstract__robot_8cpp_source.html">abstract_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a64ae098f7cadad8237e663658f038663"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64ae098f7cadad8237e663658f038663">&#9670;&nbsp;</a></span>bounds() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00061">61</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a52c63e180b0a31cd9b97b824eb1b5c22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52c63e180b0a31cd9b97b824eb1b5c22">&#9670;&nbsp;</a></span>bounds() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="aeb08dc2fa1ecdad08544fb77ff60d78e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb08dc2fa1ecdad08544fb77ff60d78e">&#9670;&nbsp;</a></span>check_single_object_collision() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual bool Abstract_robot::check_single_object_collision </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot</a>, <a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="aeb08dc2fa1ecdad08544fb77ff60d78e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb08dc2fa1ecdad08544fb77ff60d78e">&#9670;&nbsp;</a></span>check_single_object_collision() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual bool Abstract_robot::check_single_object_collision </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot</a>, <a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="ad7080256737d26f2d4499d848e8c854a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7080256737d26f2d4499d848e8c854a">&#9670;&nbsp;</a></span>name() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Abstract_robot::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00057">57</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a1a5d8cd75f0aa634022f09d88066d313"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a5d8cd75f0aa634022f09d88066d313">&#9670;&nbsp;</a></span>name() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string&amp; Abstract_robot::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="acfcaa13dd3824464426f0557ec2e360d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acfcaa13dd3824464426f0557ec2e360d">&#9670;&nbsp;</a></span>notify() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot::notify </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot</a>, <a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="acfcaa13dd3824464426f0557ec2e360d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acfcaa13dd3824464426f0557ec2e360d">&#9670;&nbsp;</a></span>notify() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot::notify </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot</a>, <a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a7befa194e7b39c8b9d60f1844f9d1a8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7befa194e7b39c8b9d60f1844f9d1a8b">&#9670;&nbsp;</a></span>observer_mask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::bitset&lt;3&gt; Abstract_robot::observer_mask </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00067">67</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aef7449039e62cf8608dbd22222120289"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef7449039e62cf8608dbd22222120289">&#9670;&nbsp;</a></span>robot_root_bounds() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot::robot_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00064">64</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a62093041e9154e06ed573a42a76cc778"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62093041e9154e06ed573a42a76cc778">&#9670;&nbsp;</a></span>robot_root_bounds() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot::robot_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="af29a9894b43fc8124de65712414168f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af29a9894b43fc8124de65712414168f4">&#9670;&nbsp;</a></span>root_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot::root_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00060">60</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="af7a230da2f4551f707557a4f5fa447ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7a230da2f4551f707557a4f5fa447ac">&#9670;&nbsp;</a></span>root_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual tf2::Transform&amp; Abstract_robot::root_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a72694508ca6d5ada16236775402dd385"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72694508ca6d5ada16236775402dd385">&#9670;&nbsp;</a></span>rotate() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::rotate </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>deg</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_2abstract__robot_8h_source.html#l00041">41</a> of file <a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a72694508ca6d5ada16236775402dd385"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72694508ca6d5ada16236775402dd385">&#9670;&nbsp;</a></span>rotate() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::rotate </td>
+          <td>(</td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>deg</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00065">65</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a7f30d6f41a3f7cbdb9839c75b957b366"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f30d6f41a3f7cbdb9839c75b957b366">&#9670;&nbsp;</a></span>set_observer_mask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::set_observer_mask </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>i</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00068">68</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ab27017c6039446502704b443df934a2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab27017c6039446502704b443df934a2d">&#9670;&nbsp;</a></span>set_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::set_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_2abstract__robot_8h_source.html#l00040">40</a> of file <a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ab27017c6039446502704b443df934a2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab27017c6039446502704b443df934a2d">&#9670;&nbsp;</a></span>set_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::set_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00063">63</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aa3bfc2c32585c42ca88f5fc1e663eb93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3bfc2c32585c42ca88f5fc1e663eb93">&#9670;&nbsp;</a></span>size() <span class="overload">[1/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Abstract_robot::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00059">59</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a13949665d4f8ac53aadc357883b301da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13949665d4f8ac53aadc357883b301da">&#9670;&nbsp;</a></span>size() <span class="overload">[2/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual tf2::Vector3&amp; Abstract_robot::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="abd68b299ae1d193e2c4d5ce89a7a2c61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd68b299ae1d193e2c4d5ce89a7a2c61">&#9670;&nbsp;</a></span>size() <span class="overload">[3/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::size </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_2abstract__robot_8h_source.html#l00039">39</a> of file <a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="abd68b299ae1d193e2c4d5ce89a7a2c61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd68b299ae1d193e2c4d5ce89a7a2c61">&#9670;&nbsp;</a></span>size() <span class="overload">[4/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::size </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00062">62</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a4d636b2de764243b145577db70637d63"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d636b2de764243b145577db70637d63">&#9670;&nbsp;</a></span>tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot::tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00058">58</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ae3e4f92f97f4a55fe9cb7196024fe30a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3e4f92f97f4a55fe9cb7196024fe30a">&#9670;&nbsp;</a></span>tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual tf2::Transform&amp; Abstract_robot::tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot</a>, and <a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">Abstract_robot_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a126e52a7696cf030f5697dd93439775f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a126e52a7696cf030f5697dd93439775f">&#9670;&nbsp;</a></span>translate() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::translate </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_2abstract__robot_8h_source.html#l00042">42</a> of file <a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a126e52a7696cf030f5697dd93439775f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a126e52a7696cf030f5697dd93439775f">&#9670;&nbsp;</a></span>translate() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot::translate </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00066">66</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ade9a130588307d054c1d68e861a01717"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade9a130588307d054c1d68e861a01717">&#9670;&nbsp;</a></span>workload_checker() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot::workload_checker </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>count_vector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot</a>, <a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">Abstract_robot_decorator</a>, and <a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot</a>.</p>
+
+</div>
+</div>
+<a id="ade9a130588307d054c1d68e861a01717"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade9a130588307d054c1d68e861a01717">&#9670;&nbsp;</a></span>workload_checker() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot::workload_checker </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>count_vector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot</a>, <a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">Abstract_robot_decorator</a>, and <a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a28c13c43328a26f12659ff086d77394e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28c13c43328a26f12659ff086d77394e">&#9670;&nbsp;</a></span>bounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; tf2::Transform &gt; Abstract_robot::bounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Bounds of table top surface. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00031">31</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a3dc156f9e7813fa5dfa0d9c8c7e7a36f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">&#9670;&nbsp;</a></span>name_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Abstract_robot::name_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Name of robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00027">27</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aae8fb853afa438433797b9cc5008f1f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae8fb853afa438433797b9cc5008f1f2">&#9670;&nbsp;</a></span>observer_mask_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::bitset&lt;3&gt; Abstract_robot::observer_mask_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00033">33</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a6d8ed98b1820134733f8d1a42eaa00c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d8ed98b1820134733f8d1a42eaa00c4">&#9670;&nbsp;</a></span>robot_root_bounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; tf2::Transform &gt; Abstract_robot::robot_root_bounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Bounds of robot arm as sub-region of table top. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00032">32</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a598a8379918fbdaf44358be840f146b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a598a8379918fbdaf44358be840f146b7">&#9670;&nbsp;</a></span>root_tf_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform Abstract_robot::root_tf_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classRobot.html">Robot</a> root on table top. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00030">30</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="af92f5538f28fbe61687d70f15e84fb82"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af92f5538f28fbe61687d70f15e84fb82">&#9670;&nbsp;</a></span>size_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3 Abstract_robot::size_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Size of table. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00028">28</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a854a3c8c740dcb60e0ee347fcd5447f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a854a3c8c740dcb60e0ee347fcd5447f6">&#9670;&nbsp;</a></span>tf_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform Abstract_robot::tf_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Pose of table. </p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00029">29</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a></li>
+<li><a class="el" href="abstract__robot_8cpp_source.html">abstract_robot.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__decorator-members.html b/doc/html/classAbstract__robot__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce017ad8dc5684b7ba666e8b0c581a1fde9098b4
--- /dev/null
+++ b/doc/html/classAbstract__robot__decorator-members.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_robot_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a>(std::unique_ptr&lt; Abstract_robot &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;b) override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">grasp_map_generator_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">notify</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">robot_root_bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">root_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">Abstract_robot::size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">spezifie_robot_groups</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">spezifie_root_bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__decorator.html b/doc/html/classAbstract__robot__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..b7b254bbd4f84a345b87d76a7569ebd270b6cb40
--- /dev/null
+++ b/doc/html/classAbstract__robot__decorator.html
@@ -0,0 +1,674 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_robot_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__robot__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_robot_decorator Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_robot_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__robot__decorator__inherit__graph.png" border="0" usemap="#Abstract__robot__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__robot__decorator_inherit__map" id="Abstract__robot__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" href="classPanda__decorator.html" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="40,5,157,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a9049f28e67b6457114a2b575587de4d4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt; <a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>)</td></tr>
+<tr class="separator:a9049f28e67b6457114a2b575587de4d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a889edd0d57abce0f6c2a6bc14bcbee6e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">bounds</a> () override</td></tr>
+<tr class="separator:a889edd0d57abce0f6c2a6bc14bcbee6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0c58aab1a4758916e8b448f83b1eec7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;b) override</td></tr>
+<tr class="separator:ad0c58aab1a4758916e8b448f83b1eec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93929b117f84e353f322d353ad762d61"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">name</a> () override</td></tr>
+<tr class="separator:a93929b117f84e353f322d353ad762d61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea8ffc58bc7a4187d8d28440e4395174"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a> ()</td></tr>
+<tr class="separator:aea8ffc58bc7a4187d8d28440e4395174"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a1d6aa0f1bdeeabe95517b0408e0cf8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">notify</a> () override</td></tr>
+<tr class="separator:a9a1d6aa0f1bdeeabe95517b0408e0cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7c7ebc6cbf26f5e99649ffaabf7e419"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">robot_root_bounds</a> () override</td></tr>
+<tr class="separator:ae7c7ebc6cbf26f5e99649ffaabf7e419"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fdba4f8a000b15b7a367066b0d79910"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">root_tf</a> () override</td></tr>
+<tr class="separator:a7fdba4f8a000b15b7a367066b0d79910"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70a76cf36cdbe1179340b533b238151b"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">size</a> () override</td></tr>
+<tr class="separator:a70a76cf36cdbe1179340b533b238151b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4f20979cd3cdb659a380511ef509b90"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">spezifie_robot_groups</a> ()=0</td></tr>
+<tr class="separator:ac4f20979cd3cdb659a380511ef509b90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a2ac64bad39febde6685135822c2597"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">spezifie_root_bounds</a> ()=0</td></tr>
+<tr class="separator:a2a2ac64bad39febde6685135822c2597"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a2e4b619b74d083b4497af183948950"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">tf</a> () override</td></tr>
+<tr class="separator:a5a2e4b619b74d083b4497af183948950"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad725d88bfcce39d8e90c45b38b85e144"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td></tr>
+<tr class="separator:ad725d88bfcce39d8e90c45b38b85e144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a625e198b41f5965ac3fca6673d4039a7"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; MapGenerator &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">grasp_map_generator_</a></td></tr>
+<tr class="separator:a625e198b41f5965ac3fca6673d4039a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86429ab626717a96cd34de271bb75c5c"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a></td></tr>
+<tr class="separator:a86429ab626717a96cd34de271bb75c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a586e264c1add89b1becf4e5d18964160"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a></td></tr>
+<tr class="separator:a586e264c1add89b1becf4e5d18964160"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bdb9eee650e25e17647b8626ae74c27"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a></td></tr>
+<tr class="separator:a9bdb9eee650e25e17647b8626ae74c27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41ecd95589c9236d7fc82921276339c7"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a></td></tr>
+<tr class="separator:a41ecd95589c9236d7fc82921276339c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00018">18</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a9049f28e67b6457114a2b575587de4d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9049f28e67b6457114a2b575587de4d4">&#9670;&nbsp;</a></span>Abstract_robot_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot_decorator::Abstract_robot_decorator </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt;&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00029">29</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a889edd0d57abce0f6c2a6bc14bcbee6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a889edd0d57abce0f6c2a6bc14bcbee6e">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot_decorator::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00039">39</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad0c58aab1a4758916e8b448f83b1eec7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0c58aab1a4758916e8b448f83b1eec7">&#9670;&nbsp;</a></span>check_single_object_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Abstract_robot_decorator::check_single_object_collision </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00042">42</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a93929b117f84e353f322d353ad762d61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93929b117f84e353f322d353ad762d61">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Abstract_robot_decorator::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00035">35</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="aea8ffc58bc7a4187d8d28440e4395174"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea8ffc58bc7a4187d8d28440e4395174">&#9670;&nbsp;</a></span>next()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__robot.html">Abstract_robot</a>* Abstract_robot_decorator::next </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00045">45</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9a1d6aa0f1bdeeabe95517b0408e0cf8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a1d6aa0f1bdeeabe95517b0408e0cf8">&#9670;&nbsp;</a></span>notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_decorator::notify </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00041">41</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae7c7ebc6cbf26f5e99649ffaabf7e419"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7c7ebc6cbf26f5e99649ffaabf7e419">&#9670;&nbsp;</a></span>robot_root_bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot_decorator::robot_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00040">40</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a7fdba4f8a000b15b7a367066b0d79910"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7fdba4f8a000b15b7a367066b0d79910">&#9670;&nbsp;</a></span>root_tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_decorator::root_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00038">38</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a70a76cf36cdbe1179340b533b238151b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70a76cf36cdbe1179340b533b238151b">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Abstract_robot_decorator::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00037">37</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ac4f20979cd3cdb659a380511ef509b90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4f20979cd3cdb659a380511ef509b90">&#9670;&nbsp;</a></span>spezifie_robot_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_decorator::spezifie_robot_groups </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a2a2ac64bad39febde6685135822c2597"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a2ac64bad39febde6685135822c2597">&#9670;&nbsp;</a></span>spezifie_root_bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_decorator::spezifie_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a5a2e4b619b74d083b4497af183948950"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a2e4b619b74d083b4497af183948950">&#9670;&nbsp;</a></span>tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_decorator::tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00036">36</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad725d88bfcce39d8e90c45b38b85e144"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad725d88bfcce39d8e90c45b38b85e144">&#9670;&nbsp;</a></span>workload_checker()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_decorator::workload_checker </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>count_vector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00043">43</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a625e198b41f5965ac3fca6673d4039a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a625e198b41f5965ac3fca6673d4039a7">&#9670;&nbsp;</a></span>grasp_map_generator_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;MapGenerator&gt; Abstract_robot_decorator::grasp_map_generator_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00025">25</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a86429ab626717a96cd34de271bb75c5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86429ab626717a96cd34de271bb75c5c">&#9670;&nbsp;</a></span>map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::string&gt; Abstract_robot_decorator::map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00024">24</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a586e264c1add89b1becf4e5d18964160"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a586e264c1add89b1becf4e5d18964160">&#9670;&nbsp;</a></span>mgi_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Abstract_robot_decorator::mgi_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00021">21</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9bdb9eee650e25e17647b8626ae74c27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9bdb9eee650e25e17647b8626ae74c27">&#9670;&nbsp;</a></span>mgi_hand_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Abstract_robot_decorator::mgi_hand_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00022">22</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a41ecd95589c9236d7fc82921276339c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41ecd95589c9236d7fc82921276339c7">&#9670;&nbsp;</a></span>next_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classAbstract__robot.html">Abstract_robot</a>&gt; Abstract_robot_decorator::next_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__robot__decorator_8h_source.html#l00020">20</a> of file <a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="abstract__robot__decorator_8h_source.html">abstract_robot_decorator.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__decorator__inherit__graph.map b/doc/html/classAbstract__robot__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..343c1df2cd449e7458e5c8e2f0c279e8ea5dece3
--- /dev/null
+++ b/doc/html/classAbstract__robot__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Abstract_robot_decorator" name="Abstract_robot_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" id="node3" href="$classPanda__decorator.html" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" id="node2" href="$classAbstract__robot.html" title=" " alt="" coords="40,5,157,32"/>
+</map>
diff --git a/doc/html/classAbstract__robot__decorator__inherit__graph.md5 b/doc/html/classAbstract__robot__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..ab84569c415147e1287b7605b93b35aa27f55206
--- /dev/null
+++ b/doc/html/classAbstract__robot__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+a51909da13d028534d719a6bde7f2162
\ No newline at end of file
diff --git a/doc/html/classAbstract__robot__decorator__inherit__graph.png b/doc/html/classAbstract__robot__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..14b053cf66b93c63fba85aa30ffa3302dd6ba83c
Binary files /dev/null and b/doc/html/classAbstract__robot__decorator__inherit__graph.png differ
diff --git a/doc/html/classAbstract__robot__element-members.html b/doc/html/classAbstract__robot__element-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..e635a903d2e619752eb41a52b141e7bc51957d5e
--- /dev/null
+++ b/doc/html/classAbstract__robot__element-members.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_robot_element Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf2::Transform &amp;tf)=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf2::Transform &amp;tf)=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">world_tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__element.html b/doc/html/classAbstract__robot__element.html
new file mode 100644
index 0000000000000000000000000000000000000000..b58c44cf1e6c157f2379ff80164abbcac62e8711
--- /dev/null
+++ b/doc/html/classAbstract__robot__element.html
@@ -0,0 +1,719 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_robot_element Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__robot__element-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_robot_element Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="impl_2abstract__robot__element_8h_source.html">abstract_robot_element.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_robot_element:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__robot__element__inherit__graph.png" border="0" usemap="#Abstract__robot__element_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__robot__element_inherit__map" id="Abstract__robot__element_inherit__map">
+<area shape="rect" title=" " alt="" coords="5,189,184,216"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="232,98,411,139"/>
+<area shape="rect" href="classField.html" title=" " alt="" coords="295,164,347,191"/>
+<area shape="rect" href="classPanel.html" title=" " alt="" coords="292,215,351,241"/>
+<area shape="rect" href="classWing.html" title=" " alt="" coords="294,265,349,292"/>
+<area shape="rect" href="classField__rviz__decorator.html" title=" " alt="" coords="471,5,623,32"/>
+<area shape="rect" href="classLog__decorator.html" title=" " alt="" coords="490,56,605,83"/>
+<area shape="rect" href="classWing__moveit__decorator.html" title=" " alt="" coords="459,107,636,133"/>
+<area shape="rect" href="classWing__rviz__decorator.html" title=" " alt="" coords="470,157,625,184"/>
+<area shape="rect" href="classMoveit__panel.html" title=" " alt="" coords="492,212,603,239"/>
+<area shape="rect" href="classRviz__panel.html" title=" " alt="" coords="501,263,594,289"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a402345bc67c9a2d09f903d910ee20405"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">bounds</a> ()=0</td></tr>
+<tr class="separator:a402345bc67c9a2d09f903d910ee20405"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a910a29582a54972c947fa57bbdc444ec"><td class="memItemLeft" align="right" valign="top">virtual std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a> ()=0</td></tr>
+<tr class="separator:a910a29582a54972c947fa57bbdc444ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2eb0ca7627bba7b58e85046532e68269"><td class="memItemLeft" align="right" valign="top">virtual tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a> ()=0</td></tr>
+<tr class="separator:a2eb0ca7627bba7b58e85046532e68269"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecee1e1a5ca1f40473f325583b39dd9d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a> (tf2::Transform &amp;tf)=0</td></tr>
+<tr class="separator:aecee1e1a5ca1f40473f325583b39dd9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecee1e1a5ca1f40473f325583b39dd9d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a> (tf2::Transform &amp;tf)=0</td></tr>
+<tr class="separator:aecee1e1a5ca1f40473f325583b39dd9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6886c5fcf4a701aaab12b93fef87e3a6"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">world_tf</a> ()=0</td></tr>
+<tr class="separator:a6886c5fcf4a701aaab12b93fef87e3a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00009">9</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a2c9540782c6450c15aaa20c20b677a9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c9540782c6450c15aaa20c20b677a9a">&#9670;&nbsp;</a></span>Abstract_robot_element() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot_element::Abstract_robot_element </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab63f250226570c92077ef4555d6f5890"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab63f250226570c92077ef4555d6f5890">&#9670;&nbsp;</a></span>Abstract_robot_element() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot_element::Abstract_robot_element </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00017">17</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a402345bc67c9a2d09f903d910ee20405"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a402345bc67c9a2d09f903d910ee20405">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot_element::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">Abstract_robot_element_decorator</a>, <a class="el" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">Field</a>, <a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">Panel</a>, and <a class="el" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">Wing</a>.</p>
+
+</div>
+</div>
+<a id="a19e094e1639e2c72ead481a3c6c9ec24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19e094e1639e2c72ead481a3c6c9ec24">&#9670;&nbsp;</a></span>calc_world_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::calc_world_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00019">19</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a19e094e1639e2c72ead481a3c6c9ec24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19e094e1639e2c72ead481a3c6c9ec24">&#9670;&nbsp;</a></span>calc_world_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::calc_world_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00027">27</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a910a29582a54972c947fa57bbdc444ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a910a29582a54972c947fa57bbdc444ec">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string&amp; Abstract_robot_element::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">Abstract_robot_element_decorator</a>, <a class="el" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">Field</a>, <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel</a>, and <a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing</a>.</p>
+
+</div>
+</div>
+<a id="ad3ee9aff6d4fb1e4e90775e943e65861"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3ee9aff6d4fb1e4e90775e943e65861">&#9670;&nbsp;</a></span>relative_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_element::relative_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00018">18</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="ad3ee9aff6d4fb1e4e90775e943e65861"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3ee9aff6d4fb1e4e90775e943e65861">&#9670;&nbsp;</a></span>relative_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_element::relative_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00024">24</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a12e6954b51765e18a7f0c2d8c4eca0c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12e6954b51765e18a7f0c2d8c4eca0c6">&#9670;&nbsp;</a></span>set_relative_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::set_relative_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00017">17</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a12e6954b51765e18a7f0c2d8c4eca0c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12e6954b51765e18a7f0c2d8c4eca0c6">&#9670;&nbsp;</a></span>set_relative_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::set_relative_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00025">25</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="aa7ee89ce290dd2e6408a9d2118af93f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7ee89ce290dd2e6408a9d2118af93f8">&#9670;&nbsp;</a></span>set_world_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::set_world_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00020">20</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="aa7ee89ce290dd2e6408a9d2118af93f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7ee89ce290dd2e6408a9d2118af93f8">&#9670;&nbsp;</a></span>set_world_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element::set_world_tf </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00028">28</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a2eb0ca7627bba7b58e85046532e68269"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2eb0ca7627bba7b58e85046532e68269">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual tf2::Vector3&amp; Abstract_robot_element::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">Abstract_robot_element_decorator</a>, <a class="el" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">Field</a>, <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel</a>, and <a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">Wing</a>.</p>
+
+</div>
+</div>
+<a id="aecee1e1a5ca1f40473f325583b39dd9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecee1e1a5ca1f40473f325583b39dd9d">&#9670;&nbsp;</a></span>update() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">Wing</a>, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>, <a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator</a>, <a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel</a>, <a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator</a>, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>, <a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel</a>, <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>, <a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel</a>, <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>, and <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>.</p>
+
+</div>
+</div>
+<a id="aecee1e1a5ca1f40473f325583b39dd9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecee1e1a5ca1f40473f325583b39dd9d">&#9670;&nbsp;</a></span>update() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">Wing</a>, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>, <a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator</a>, <a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel</a>, <a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator</a>, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>, <a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel</a>, <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>, <a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel</a>, <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>, and <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>.</p>
+
+</div>
+</div>
+<a id="a99d0cb9e273cdfb373d4c974529b1ad6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99d0cb9e273cdfb373d4c974529b1ad6">&#9670;&nbsp;</a></span>world_tf() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_element::world_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00021">21</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a6886c5fcf4a701aaab12b93fef87e3a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6886c5fcf4a701aaab12b93fef87e3a6">&#9670;&nbsp;</a></span>world_tf() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual tf2::Transform&amp; Abstract_robot_element::world_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">Abstract_robot_element_decorator</a>, <a class="el" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">Field</a>, and <a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">Panel</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a4d44edf1d412564ef916f16ee9035116"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d44edf1d412564ef916f16ee9035116">&#9670;&nbsp;</a></span>bounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Abstract_robot_element::bounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00014">14</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="adcaadf1f399625d67747ce746a0cc928"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcaadf1f399625d67747ce746a0cc928">&#9670;&nbsp;</a></span>name_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Abstract_robot_element::name_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00009">9</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a83f046bb2fb1009832091cf8502af956"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83f046bb2fb1009832091cf8502af956">&#9670;&nbsp;</a></span>relative_tf_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform Abstract_robot_element::relative_tf_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00011">11</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="a432662f8ece3c1e08739bd36a4c155d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a432662f8ece3c1e08739bd36a4c155d6">&#9670;&nbsp;</a></span>size_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3 Abstract_robot_element::size_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2abstract__robot__element_8h_source.html#l00012">12</a> of file <a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<a id="ad42d8ba185583e644e00af1c2298a38d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad42d8ba185583e644e00af1c2298a38d">&#9670;&nbsp;</a></span>world_tf_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform Abstract_robot_element::world_tf_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element_8h_source.html#l00012">12</a> of file <a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__element__decorator-members.html b/doc/html/classAbstract__robot__element__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b8614876ef6faaa7d5fd4ee6f1c2a60f30e4132b
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__decorator-members.html
@@ -0,0 +1,68 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_robot_element_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">input_filter</a>(tf2::Transform &amp;tf)=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__element__decorator.html b/doc/html/classAbstract__robot__element__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb74abd5620667b2509f23658998055f0443374f
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__decorator.html
@@ -0,0 +1,607 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_robot_element_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classAbstract__robot__element__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_robot_element_decorator Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">abstract_robot_element_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_robot_element_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__robot__element__decorator__inherit__graph.png" border="0" usemap="#Abstract__robot__element__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__robot__element__decorator_inherit__map" id="Abstract__robot__element__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="235,80,413,121"/>
+<area shape="rect" href="classField__rviz__decorator.html" title=" " alt="" coords="5,169,157,196"/>
+<area shape="rect" href="classLog__decorator.html" title=" " alt="" coords="181,169,296,196"/>
+<area shape="rect" href="classWing__moveit__decorator.html" title=" " alt="" coords="321,169,498,196"/>
+<area shape="rect" href="classWing__rviz__decorator.html" title=" " alt="" coords="523,169,677,196"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="235,5,413,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae8e0dfe6a805942ddc5bd8d335b279a7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:ae8e0dfe6a805942ddc5bd8d335b279a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c76b8c0d4e487517e8c874e75613162"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a2c76b8c0d4e487517e8c874e75613162"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06ca3833192af0e719c22419c07ccbb"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a> () override</td></tr>
+<tr class="separator:ac06ca3833192af0e719c22419c07ccbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a83bd61665cc4e3692143e84f091e8"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a> ()=0</td></tr>
+<tr class="separator:ae6a83bd61665cc4e3692143e84f091e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa43d886a91e05c76c2cad7695d1662ff"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">input_filter</a> (tf2::Transform &amp;tf)=0</td></tr>
+<tr class="separator:aa43d886a91e05c76c2cad7695d1662ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa68bc27f679beb896722f0eebe6d719"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a> () override</td></tr>
+<tr class="separator:afa68bc27f679beb896722f0eebe6d719"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d8de36475ce19034a9728f545eb03e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a> ()</td></tr>
+<tr class="separator:a87d8de36475ce19034a9728f545eb03e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8042389be7d08be2d2792810078ac327"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a> ()=0</td></tr>
+<tr class="separator:a8042389be7d08be2d2792810078ac327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8042389be7d08be2d2792810078ac327"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a> ()=0</td></tr>
+<tr class="separator:a8042389be7d08be2d2792810078ac327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe4aed220334766bd4ec903429006830"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a> () override</td></tr>
+<tr class="separator:abe4aed220334766bd4ec903429006830"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addab3f179d202bea3da80887206c8048"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:addab3f179d202bea3da80887206c8048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addab3f179d202bea3da80887206c8048"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:addab3f179d202bea3da80887206c8048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9138c650f2148d515802a89f079ace2f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> ()</td></tr>
+<tr class="separator:a9138c650f2148d515802a89f079ace2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad077cbfa7a43d1212b78cd61bcbf37a6"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a> () override</td></tr>
+<tr class="separator:ad077cbfa7a43d1212b78cd61bcbf37a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ab7fe1d6234cc937bf72a2f951781329b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td></tr>
+<tr class="separator:ab7fe1d6234cc937bf72a2f951781329b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad46c4941160e802f67afa20b4a85d08e"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td></tr>
+<tr class="separator:ad46c4941160e802f67afa20b4a85d08e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3594b46365559d7304942f983bddab03"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td></tr>
+<tr class="separator:a3594b46365559d7304942f983bddab03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">7</a> of file <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ae8e0dfe6a805942ddc5bd8d335b279a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8e0dfe6a805942ddc5bd8d335b279a7">&#9670;&nbsp;</a></span>Abstract_robot_element_decorator() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot_element_decorator::Abstract_robot_element_decorator </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html#l00013">13</a> of file <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a2c76b8c0d4e487517e8c874e75613162"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c76b8c0d4e487517e8c874e75613162">&#9670;&nbsp;</a></span>Abstract_robot_element_decorator() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_robot_element_decorator::Abstract_robot_element_decorator </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00014">14</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac06ca3833192af0e719c22419c07ccbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac06ca3833192af0e719c22419c07ccbb">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Abstract_robot_element_decorator::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00020">20</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae6a83bd61665cc4e3692143e84f091e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6a83bd61665cc4e3692143e84f091e8">&#9670;&nbsp;</a></span>input_filter() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator</a>.</p>
+
+</div>
+</div>
+<a id="aa43d886a91e05c76c2cad7695d1662ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa43d886a91e05c76c2cad7695d1662ff">&#9670;&nbsp;</a></span>input_filter() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">Field_rviz_decorator</a>, and <a class="el" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">Wing_rviz_decorator</a>.</p>
+
+</div>
+</div>
+<a id="afa68bc27f679beb896722f0eebe6d719"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa68bc27f679beb896722f0eebe6d719">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Abstract_robot_element_decorator::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00022">22</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a87d8de36475ce19034a9728f545eb03e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87d8de36475ce19034a9728f545eb03e">&#9670;&nbsp;</a></span>next()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>* Abstract_robot_element_decorator::next </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">18</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a8042389be7d08be2d2792810078ac327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8042389be7d08be2d2792810078ac327">&#9670;&nbsp;</a></span>output_filter() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator</a>, <a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator</a>, and <a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator</a>.</p>
+
+</div>
+</div>
+<a id="a8042389be7d08be2d2792810078ac327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8042389be7d08be2d2792810078ac327">&#9670;&nbsp;</a></span>output_filter() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_robot_element_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator</a>, <a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator</a>, and <a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator</a>.</p>
+
+</div>
+</div>
+<a id="abe4aed220334766bd4ec903429006830"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe4aed220334766bd4ec903429006830">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Abstract_robot_element_decorator::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00023">23</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="addab3f179d202bea3da80887206c8048"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#addab3f179d202bea3da80887206c8048">&#9670;&nbsp;</a></span>update() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p>Reimplemented in <a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator</a>, <a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator</a>, <a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator</a>, and <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">17</a> of file <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="addab3f179d202bea3da80887206c8048"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#addab3f179d202bea3da80887206c8048">&#9670;&nbsp;</a></span>update() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Abstract_robot_element_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p>Reimplemented in <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00027">27</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9138c650f2148d515802a89f079ace2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9138c650f2148d515802a89f079ace2f">&#9670;&nbsp;</a></span>wing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>* Abstract_robot_element_decorator::wing </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">15</a> of file <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad077cbfa7a43d1212b78cd61bcbf37a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad077cbfa7a43d1212b78cd61bcbf37a6">&#9670;&nbsp;</a></span>world_tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Abstract_robot_element_decorator::world_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00021">21</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ab7fe1d6234cc937bf72a2f951781329b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7fe1d6234cc937bf72a2f951781329b">&#9670;&nbsp;</a></span>next_ <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>* Abstract_robot_element_decorator::next_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">9</a> of file <a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad46c4941160e802f67afa20b4a85d08e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad46c4941160e802f67afa20b4a85d08e">&#9670;&nbsp;</a></span>next_ <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; Abstract_robot_element_decorator::next_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00010">10</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a3594b46365559d7304942f983bddab03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3594b46365559d7304942f983bddab03">&#9670;&nbsp;</a></span>nh_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::NodeHandle&gt; Abstract_robot_element_decorator::nh_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00009">9</a> of file <a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__robot__element__decorator__inherit__graph.map b/doc/html/classAbstract__robot__element__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..9d269866a7f59401b99cd8c5768a72c99a24aca6
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__decorator__inherit__graph.map
@@ -0,0 +1,8 @@
+<map id="Abstract_robot_element_decorator" name="Abstract_robot_element_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="235,80,413,121"/>
+<area shape="rect" id="node3" href="$classField__rviz__decorator.html" title=" " alt="" coords="5,169,157,196"/>
+<area shape="rect" id="node4" href="$classLog__decorator.html" title=" " alt="" coords="181,169,296,196"/>
+<area shape="rect" id="node5" href="$classWing__moveit__decorator.html" title=" " alt="" coords="321,169,498,196"/>
+<area shape="rect" id="node6" href="$classWing__rviz__decorator.html" title=" " alt="" coords="523,169,677,196"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element.html" title=" " alt="" coords="235,5,413,32"/>
+</map>
diff --git a/doc/html/classAbstract__robot__element__decorator__inherit__graph.md5 b/doc/html/classAbstract__robot__element__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1168a5bae94bb1132aa52f6e00633adcab3ea292
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+8784b9603d1ca3a332f3873b8dc47549
\ No newline at end of file
diff --git a/doc/html/classAbstract__robot__element__decorator__inherit__graph.png b/doc/html/classAbstract__robot__element__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..cb0629c92512c7f0bf25c3747ed989855f930760
Binary files /dev/null and b/doc/html/classAbstract__robot__element__decorator__inherit__graph.png differ
diff --git a/doc/html/classAbstract__robot__element__inherit__graph.map b/doc/html/classAbstract__robot__element__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..ba49ea4a662a1daed1295ca242823fda210cf145
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__inherit__graph.map
@@ -0,0 +1,13 @@
+<map id="Abstract_robot_element" name="Abstract_robot_element">
+<area shape="rect" id="node1" title=" " alt="" coords="5,189,184,216"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="232,98,411,139"/>
+<area shape="rect" id="node7" href="$classField.html" title=" " alt="" coords="295,164,347,191"/>
+<area shape="rect" id="node8" href="$classPanel.html" title=" " alt="" coords="292,215,351,241"/>
+<area shape="rect" id="node11" href="$classWing.html" title=" " alt="" coords="294,265,349,292"/>
+<area shape="rect" id="node3" href="$classField__rviz__decorator.html" title=" " alt="" coords="471,5,623,32"/>
+<area shape="rect" id="node4" href="$classLog__decorator.html" title=" " alt="" coords="490,56,605,83"/>
+<area shape="rect" id="node5" href="$classWing__moveit__decorator.html" title=" " alt="" coords="459,107,636,133"/>
+<area shape="rect" id="node6" href="$classWing__rviz__decorator.html" title=" " alt="" coords="470,157,625,184"/>
+<area shape="rect" id="node9" href="$classMoveit__panel.html" title=" " alt="" coords="492,212,603,239"/>
+<area shape="rect" id="node10" href="$classRviz__panel.html" title=" " alt="" coords="501,263,594,289"/>
+</map>
diff --git a/doc/html/classAbstract__robot__element__inherit__graph.md5 b/doc/html/classAbstract__robot__element__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8cf8c488d41596d2d9c620d9d7e6388a94db6609
--- /dev/null
+++ b/doc/html/classAbstract__robot__element__inherit__graph.md5
@@ -0,0 +1 @@
+c439441cca930e2def805799d69c9334
\ No newline at end of file
diff --git a/doc/html/classAbstract__robot__element__inherit__graph.png b/doc/html/classAbstract__robot__element__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..aa084b1d1de78d53e12c493065c36956f75de15b
Binary files /dev/null and b/doc/html/classAbstract__robot__element__inherit__graph.png differ
diff --git a/doc/html/classAbstract__robot__inherit__graph.map b/doc/html/classAbstract__robot__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..042dd571e2457ef8694093074fcdebc836f00090
--- /dev/null
+++ b/doc/html/classAbstract__robot__inherit__graph.map
@@ -0,0 +1,8 @@
+<map id="Abstract_robot" name="Abstract_robot">
+<area shape="rect" id="node1" title=" " alt="" coords="203,5,320,32"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__decorator.html" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" id="node4" href="$classCeti__robot.html" title="Concrete Ceti&#45;Robot." alt="" coords="217,80,306,107"/>
+<area shape="rect" id="node5" href="$classRobot.html" title=" " alt="" coords="330,80,390,107"/>
+<area shape="rect" id="node3" href="$classPanda__decorator.html" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" id="node6" href="$classMoveit__robot.html" title=" " alt="" coords="306,155,414,181"/>
+</map>
diff --git a/doc/html/classAbstract__robot__inherit__graph.md5 b/doc/html/classAbstract__robot__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..299c32368e7173bcb5ad3136be0bfddc1abd1cbb
--- /dev/null
+++ b/doc/html/classAbstract__robot__inherit__graph.md5
@@ -0,0 +1 @@
+22812acff995d4e5db83a42033c8c648
\ No newline at end of file
diff --git a/doc/html/classAbstract__robot__inherit__graph.png b/doc/html/classAbstract__robot__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..37377824fe2092fcef757f8f1734ad6326804b7a
Binary files /dev/null and b/doc/html/classAbstract__robot__inherit__graph.png differ
diff --git a/doc/html/classAbstract__strategy-members.html b/doc/html/classAbstract__strategy-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a21a4ba29c14439e2c93fc31b7eb5cd582bab15e
--- /dev/null
+++ b/doc/html/classAbstract__strategy-members.html
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Abstract_strategy Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classAbstract__strategy.html">Abstract_strategy</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a>()=default</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">cloud_calculation</a>(Abstract_map_loader *var)=0</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">inv_map_creation</a>(Abstract_map_loader *var)=0</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">~Abstract_strategy</a>()=default</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__strategy.html b/doc/html/classAbstract__strategy.html
new file mode 100644
index 0000000000000000000000000000000000000000..e3173ebd9892e07fec1dadf541759b0857ad2ab3
--- /dev/null
+++ b/doc/html/classAbstract__strategy.html
@@ -0,0 +1,173 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Abstract_strategy Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classAbstract__strategy-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Abstract_strategy Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="abstract__strategy_8h_source.html">abstract_strategy.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Abstract_strategy:</div>
+<div class="dyncontent">
+<div class="center"><img src="classAbstract__strategy__inherit__graph.png" border="0" usemap="#Abstract__strategy_inherit__map" alt="Inheritance graph"/></div>
+<map name="Abstract__strategy_inherit__map" id="Abstract__strategy_inherit__map">
+<area shape="rect" title=" " alt="" coords="5,5,143,32"/>
+<area shape="rect" href="classBase__by__rotation.html" title=" " alt="" coords="7,80,141,107"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:accc89e872cb004dc89a51996b8038f5a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a> ()=default</td></tr>
+<tr class="separator:accc89e872cb004dc89a51996b8038f5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfa25fc51d61ef553f5b588732d67335"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">cloud_calculation</a> (<a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *var)=0</td></tr>
+<tr class="separator:acfa25fc51d61ef553f5b588732d67335"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20c07f343817632f5f946fdb7734159f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">inv_map_creation</a> (<a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *var)=0</td></tr>
+<tr class="separator:a20c07f343817632f5f946fdb7734159f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42ded383c401bd6cc047f5c6064f5e8d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">~Abstract_strategy</a> ()=default</td></tr>
+<tr class="separator:a42ded383c401bd6cc047f5c6064f5e8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="abstract__strategy_8h_source.html#l00008">8</a> of file <a class="el" href="abstract__strategy_8h_source.html">abstract_strategy.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="accc89e872cb004dc89a51996b8038f5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accc89e872cb004dc89a51996b8038f5a">&#9670;&nbsp;</a></span>Abstract_strategy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_strategy::Abstract_strategy </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a42ded383c401bd6cc047f5c6064f5e8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42ded383c401bd6cc047f5c6064f5e8d">&#9670;&nbsp;</a></span>~Abstract_strategy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Abstract_strategy::~Abstract_strategy </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="acfa25fc51d61ef553f5b588732d67335"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acfa25fc51d61ef553f5b588732d67335">&#9670;&nbsp;</a></span>cloud_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_strategy::cloud_calculation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation</a>.</p>
+
+</div>
+</div>
+<a id="a20c07f343817632f5f946fdb7734159f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20c07f343817632f5f946fdb7734159f">&#9670;&nbsp;</a></span>inv_map_creation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void Abstract_strategy::inv_map_creation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="abstract__strategy_8h_source.html">abstract_strategy.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classAbstract__strategy__inherit__graph.map b/doc/html/classAbstract__strategy__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..726cf88274461f601b5b878a162d1175f1db3eb0
--- /dev/null
+++ b/doc/html/classAbstract__strategy__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Abstract_strategy" name="Abstract_strategy">
+<area shape="rect" id="node1" title=" " alt="" coords="5,5,143,32"/>
+<area shape="rect" id="node2" href="$classBase__by__rotation.html" title=" " alt="" coords="7,80,141,107"/>
+</map>
diff --git a/doc/html/classAbstract__strategy__inherit__graph.md5 b/doc/html/classAbstract__strategy__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1e8e825844db8103627a0ea1ee303dc99ebab38d
--- /dev/null
+++ b/doc/html/classAbstract__strategy__inherit__graph.md5
@@ -0,0 +1 @@
+43826f35dc3a467ecf0d9092058b84e7
\ No newline at end of file
diff --git a/doc/html/classAbstract__strategy__inherit__graph.png b/doc/html/classAbstract__strategy__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..b0451193b6faf3d7ca3c8850e7637c058e251e71
Binary files /dev/null and b/doc/html/classAbstract__strategy__inherit__graph.png differ
diff --git a/doc/html/classBase__by__rotation-members.html b/doc/html/classBase__by__rotation-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..4e4250bcfada2a6d96554e8780c02df25eeb4a6e
--- /dev/null
+++ b/doc/html/classBase__by__rotation-members.html
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Base_by_rotation Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classBase__by__rotation.html">Base_by_rotation</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a>()=default</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation</a>()=default</td><td class="entry"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">cloud_calculation</a>(Abstract_map_loader *var) override</td><td class="entry"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">inv_map_creation</a>(Abstract_map_loader *var) override</td><td class="entry"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">~Abstract_strategy</a>()=default</td><td class="entry"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">~Base_by_rotation</a>()=default</td><td class="entry"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classBase__by__rotation.html b/doc/html/classBase__by__rotation.html
new file mode 100644
index 0000000000000000000000000000000000000000..ae41f49537bf566c081ad44dbcf1b63f4e809a96
--- /dev/null
+++ b/doc/html/classBase__by__rotation.html
@@ -0,0 +1,183 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Base_by_rotation Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classBase__by__rotation-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Base_by_rotation Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="base__by__rotation_8h_source.html">base_by_rotation.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Base_by_rotation:</div>
+<div class="dyncontent">
+<div class="center"><img src="classBase__by__rotation__inherit__graph.png" border="0" usemap="#Base__by__rotation_inherit__map" alt="Inheritance graph"/></div>
+<map name="Base__by__rotation_inherit__map" id="Base__by__rotation_inherit__map">
+<area shape="rect" title=" " alt="" coords="7,80,141,107"/>
+<area shape="rect" href="classAbstract__strategy.html" title=" " alt="" coords="5,5,143,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aaf73fbd91908d8b3681e0d6c595bb858"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation</a> ()=default</td></tr>
+<tr class="separator:aaf73fbd91908d8b3681e0d6c595bb858"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a910ed8dac159764f4b045f07c7ac2372"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">cloud_calculation</a> (<a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *var) override</td></tr>
+<tr class="separator:a910ed8dac159764f4b045f07c7ac2372"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3d528929f1ec7bd2ddeed2c68a9fbc4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">inv_map_creation</a> (<a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *var) override</td></tr>
+<tr class="separator:ad3d528929f1ec7bd2ddeed2c68a9fbc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63a6ed1a606880c99c0bc96f666d83ba"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">~Base_by_rotation</a> ()=default</td></tr>
+<tr class="separator:a63a6ed1a606880c99c0bc96f666d83ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__strategy"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__strategy')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__strategy.html">Abstract_strategy</a></td></tr>
+<tr class="memitem:accc89e872cb004dc89a51996b8038f5a inherit pub_methods_classAbstract__strategy"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a> ()=default</td></tr>
+<tr class="separator:accc89e872cb004dc89a51996b8038f5a inherit pub_methods_classAbstract__strategy"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42ded383c401bd6cc047f5c6064f5e8d inherit pub_methods_classAbstract__strategy"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">~Abstract_strategy</a> ()=default</td></tr>
+<tr class="separator:a42ded383c401bd6cc047f5c6064f5e8d inherit pub_methods_classAbstract__strategy"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="base__by__rotation_8h_source.html#l00009">9</a> of file <a class="el" href="base__by__rotation_8h_source.html">base_by_rotation.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aaf73fbd91908d8b3681e0d6c595bb858"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf73fbd91908d8b3681e0d6c595bb858">&#9670;&nbsp;</a></span>Base_by_rotation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Base_by_rotation::Base_by_rotation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a63a6ed1a606880c99c0bc96f666d83ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63a6ed1a606880c99c0bc96f666d83ba">&#9670;&nbsp;</a></span>~Base_by_rotation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Base_by_rotation::~Base_by_rotation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a910ed8dac159764f4b045f07c7ac2372"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a910ed8dac159764f4b045f07c7ac2372">&#9670;&nbsp;</a></span>cloud_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_by_rotation::cloud_calculation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">Abstract_strategy</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__by__rotation_8cpp_source.html#l00024">24</a> of file <a class="el" href="base__by__rotation_8cpp_source.html">base_by_rotation.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad3d528929f1ec7bd2ddeed2c68a9fbc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3d528929f1ec7bd2ddeed2c68a9fbc4">&#9670;&nbsp;</a></span>inv_map_creation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_by_rotation::inv_map_creation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a> *&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">Abstract_strategy</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__by__rotation_8cpp_source.html#l00004">4</a> of file <a class="el" href="base__by__rotation_8cpp_source.html">base_by_rotation.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="base__by__rotation_8h_source.html">base_by_rotation.h</a></li>
+<li><a class="el" href="base__by__rotation_8cpp_source.html">base_by_rotation.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classBase__by__rotation__inherit__graph.map b/doc/html/classBase__by__rotation__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..d15c62e131984b5129a06427c911099ec590044b
--- /dev/null
+++ b/doc/html/classBase__by__rotation__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Base_by_rotation" name="Base_by_rotation">
+<area shape="rect" id="node1" title=" " alt="" coords="7,80,141,107"/>
+<area shape="rect" id="node2" href="$classAbstract__strategy.html" title=" " alt="" coords="5,5,143,32"/>
+</map>
diff --git a/doc/html/classBase__by__rotation__inherit__graph.md5 b/doc/html/classBase__by__rotation__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b22765093d71a6409cbe9a000f04c5b1b1c129ed
--- /dev/null
+++ b/doc/html/classBase__by__rotation__inherit__graph.md5
@@ -0,0 +1 @@
+9d4a5582bedfe0e62d277a5d2b760627
\ No newline at end of file
diff --git a/doc/html/classBase__by__rotation__inherit__graph.png b/doc/html/classBase__by__rotation__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..6fc84f1c0036cc96f171a6a764b738f805c3dc1a
Binary files /dev/null and b/doc/html/classBase__by__rotation__inherit__graph.png differ
diff --git a/doc/html/classBase__calculation__mediator-members.html b/doc/html/classBase__calculation__mediator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..38d10213a88566fac8d9080ad780d083d712fa26
--- /dev/null
+++ b/doc/html/classBase__calculation__mediator-members.html
@@ -0,0 +1,83 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Base_calculation_mediator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">approximation</a>(Ceti_robot *robot)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">calculate</a>(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">check_collision</a>(const int &amp;robot) override</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">connect_robots</a>(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot) override</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator::connect_robots</a>(Abstract_robot *robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">generate_grounds</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">grounds_</a></td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">mediate</a>() override</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a></td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">publish</a>(Ceti_robot *r)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">robot_reader</a>()</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">robot_reader_</a></td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">set_panel</a>()</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">set_wings</a>(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">setup_rviz</a>()</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">wing_reader</a>()</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">wing_reader_</a></td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">wings_</a></td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">write_file</a>(Ceti_robot *A, Ceti_robot *B)</td><td class="entry"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classBase__calculation__mediator.html b/doc/html/classBase__calculation__mediator.html
new file mode 100644
index 0000000000000000000000000000000000000000..a3ac818878313bea9da102623397fb00aeec114a
--- /dev/null
+++ b/doc/html/classBase__calculation__mediator.html
@@ -0,0 +1,789 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Base_calculation_mediator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classBase__calculation__mediator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Base_calculation_mediator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Concrete <a class="el" href="classMediator.html">Mediator</a>.  
+ <a href="classBase__calculation__mediator.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Base_calculation_mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classBase__calculation__mediator__inherit__graph.png" border="0" usemap="#Base__calculation__mediator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Base__calculation__mediator_inherit__map" id="Base__calculation__mediator_inherit__map">
+<area shape="rect" title="Concrete Mediator." alt="" coords="5,80,204,107"/>
+<area shape="rect" href="classAbstract__mediator.html" title="Abstract mediator." alt="" coords="33,5,176,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa03bb145649933b2b362dfc8966f63c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">approximation</a> (<a class="el" href="classCeti__robot.html">Ceti_robot</a> *robot)</td></tr>
+<tr class="memdesc:aa03bb145649933b2b362dfc8966f63c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Approximates other robots to fit in the workspace.  <a href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">More...</a><br /></td></tr>
+<tr class="separator:aa03bb145649933b2b362dfc8966f63c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf5ce9f5f854708b8b2a7008d75d0330"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:acf5ce9f5f854708b8b2a7008d75d0330"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classBase__calculation__mediator.html" title="Concrete Mediator.">Base_calculation_mediator</a> constructor.  <a href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">More...</a><br /></td></tr>
+<tr class="separator:acf5ce9f5f854708b8b2a7008d75d0330"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff019cc13f25228abaf99b4a3fe72c38"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">build_wings</a> (std::bitset&lt; 3 &gt; &amp;<a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>, int &amp;robot) override</td></tr>
+<tr class="memdesc:aff019cc13f25228abaf99b4a3fe72c38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets wings of a robot.  <a href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">More...</a><br /></td></tr>
+<tr class="separator:aff019cc13f25228abaf99b4a3fe72c38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55975e58dfc863db246224217367c645"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">calculate</a> (std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</td></tr>
+<tr class="memdesc:a55975e58dfc863db246224217367c645"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ground position calculator.  <a href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">More...</a><br /></td></tr>
+<tr class="separator:a55975e58dfc863db246224217367c645"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f29ef22d330020bf276cb709c8c8238"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">check_collision</a> (const int &amp;robot) override</td></tr>
+<tr class="memdesc:a2f29ef22d330020bf276cb709c8c8238"><td class="mdescLeft">&#160;</td><td class="mdescRight">check_collision  <a href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">More...</a><br /></td></tr>
+<tr class="separator:a2f29ef22d330020bf276cb709c8c8238"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6804ea3a11a66faf3bcf0429fd016d06"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">connect_robots</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; robot) override</td></tr>
+<tr class="memdesc:a6804ea3a11a66faf3bcf0429fd016d06"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> Connector implementation.  <a href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">More...</a><br /></td></tr>
+<tr class="separator:a6804ea3a11a66faf3bcf0429fd016d06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c5b26e596ed3c7fb4d226fa10183c51"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">generate_grounds</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="memdesc:a6c5b26e596ed3c7fb4d226fa10183c51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ground generator.  <a href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">More...</a><br /></td></tr>
+<tr class="separator:a6c5b26e596ed3c7fb4d226fa10183c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af175bafdf327cc397ce1c9f42913c83a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">mediate</a> () override</td></tr>
+<tr class="memdesc:af175bafdf327cc397ce1c9f42913c83a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classMediator.html">Mediator</a> implementation.  <a href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">More...</a><br /></td></tr>
+<tr class="separator:af175bafdf327cc397ce1c9f42913c83a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62cee1d422407a72223fcee53dbba5ba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">publish</a> (<a class="el" href="classCeti__robot.html">Ceti_robot</a> *r)</td></tr>
+<tr class="memdesc:a62cee1d422407a72223fcee53dbba5ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Marker publishing methode.  <a href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">More...</a><br /></td></tr>
+<tr class="separator:a62cee1d422407a72223fcee53dbba5ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00167697941fa249b15bc322e9ecb356"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classRobot__reader.html">Robot_reader</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">robot_reader</a> ()</td></tr>
+<tr class="memdesc:a00167697941fa249b15bc322e9ecb356"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get <a class="el" href="classRobot__reader.html" title="Robot reader.">Robot_reader</a>.  <a href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">More...</a><br /></td></tr>
+<tr class="separator:a00167697941fa249b15bc322e9ecb356"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc38aa682c47686159c0c67b7685fd7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">set_panel</a> ()</td></tr>
+<tr class="memdesc:a3fc38aa682c47686159c0c67b7685fd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets panels for robots.  <a href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">More...</a><br /></td></tr>
+<tr class="separator:a3fc38aa682c47686159c0c67b7685fd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e5a579ea6a516ec8537b4b3d506e4ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">setup_rviz</a> ()</td></tr>
+<tr class="memdesc:a1e5a579ea6a516ec8537b4b3d506e4ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rviz setup methode.  <a href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">More...</a><br /></td></tr>
+<tr class="separator:a1e5a579ea6a516ec8537b4b3d506e4ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d366c17687d6e3e4d3bc27c888ee5f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWing__reader.html">Wing_reader</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">wing_reader</a> ()</td></tr>
+<tr class="memdesc:a7d366c17687d6e3e4d3bc27c888ee5f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get <a class="el" href="classWing__reader.html" title="Wing reader.">Wing_reader</a>.  <a href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">More...</a><br /></td></tr>
+<tr class="separator:a7d366c17687d6e3e4d3bc27c888ee5f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e710053c31cd1f4da64b45a11c7b660"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">write_file</a> (<a class="el" href="classCeti__robot.html">Ceti_robot</a> *A, <a class="el" href="classCeti__robot.html">Ceti_robot</a> *B)</td></tr>
+<tr class="memdesc:a1e710053c31cd1f4da64b45a11c7b660"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes result file.  <a href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">More...</a><br /></td></tr>
+<tr class="separator:a1e710053c31cd1f4da64b45a11c7b660"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator constructor.  <a href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">More...</a><br /></td></tr>
+<tr class="separator:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c102b5e272139492ab04ce0d4e43234 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot)=0</td></tr>
+<tr class="separator:a0c102b5e272139492ab04ce0d4e43234 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="memdesc:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dirname.  <a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">More...</a><br /></td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a> ()</td></tr>
+<tr class="separator:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a> ()</td></tr>
+<tr class="memdesc:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get result_vector.  <a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">More...</a><br /></td></tr>
+<tr class="separator:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a> ()</td></tr>
+<tr class="separator:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a> ()</td></tr>
+<tr class="memdesc:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robots.  <a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">More...</a><br /></td></tr>
+<tr class="separator:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="memdesc:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set dirname.  <a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">More...</a><br /></td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="memdesc:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set result vector.  <a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">More...</a><br /></td></tr>
+<tr class="separator:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a> (std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="separator:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92b5d1cb508826454ae3ea0e5cbf5f2 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">set_wings</a> (std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;wbp)=0</td></tr>
+<tr class="separator:af92b5d1cb508826454ae3ea0e5cbf5f2 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="memdesc:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloud converter.  <a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">More...</a><br /></td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a> ()</td></tr>
+<tr class="separator:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a> ()</td></tr>
+<tr class="memdesc:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wings.  <a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">More...</a><br /></td></tr>
+<tr class="separator:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a008b22e99593f2fcbff3c6e26ae5ddbe"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">grounds_</a></td></tr>
+<tr class="memdesc:a008b22e99593f2fcbff3c6e26ae5ddbe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Possible ground positions per robots.  <a href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">More...</a><br /></td></tr>
+<tr class="separator:a008b22e99593f2fcbff3c6e26ae5ddbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5419d9798ac36cd945706721aa542278"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; ros::Publisher &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">pub_</a></td></tr>
+<tr class="memdesc:a5419d9798ac36cd945706721aa542278"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publisher sharing visualization messages of the scene.  <a href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">More...</a><br /></td></tr>
+<tr class="separator:a5419d9798ac36cd945706721aa542278"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a04eb51e61a15179088786b9555e000"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classRobot__reader.html">Robot_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">robot_reader_</a></td></tr>
+<tr class="memdesc:a3a04eb51e61a15179088786b9555e000"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot__reader.html" title="Robot reader.">Robot_reader</a> which collects robot poses.  <a href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">More...</a><br /></td></tr>
+<tr class="separator:a3a04eb51e61a15179088786b9555e000"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1c0060fbd229bb5c7c8229e82200fc0"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classWing__reader.html">Wing_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">wing_reader_</a></td></tr>
+<tr class="memdesc:ae1c0060fbd229bb5c7c8229e82200fc0"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classWing__reader.html" title="Wing reader.">Wing_reader</a> which collects panel information of robots.  <a href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">More...</a><br /></td></tr>
+<tr class="separator:ae1c0060fbd229bb5c7c8229e82200fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8274031d01b4648815a25e9e545178c5"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">wings_</a></td></tr>
+<tr class="memdesc:a8274031d01b4648815a25e9e545178c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Possible panels per robot.  <a href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">More...</a><br /></td></tr>
+<tr class="separator:a8274031d01b4648815a25e9e545178c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td></tr>
+<tr class="memdesc:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirname of the reference protobuff.  <a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">More...</a><br /></td></tr>
+<tr class="separator:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td></tr>
+<tr class="memdesc:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">More...</a><br /></td></tr>
+<tr class="separator:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td></tr>
+<tr class="separator:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">ros::Publisher *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td></tr>
+<tr class="separator:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td></tr>
+<tr class="memdesc:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">total bound a workspace  <a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">More...</a><br /></td></tr>
+<tr class="separator:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td></tr>
+<tr class="separator:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td></tr>
+<tr class="memdesc:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result_vector of base positions linked to robot.  <a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">More...</a><br /></td></tr>
+<tr class="separator:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td></tr>
+<tr class="separator:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td></tr>
+<tr class="memdesc:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Robots agents.  <a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">More...</a><br /></td></tr>
+<tr class="separator:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td></tr>
+<tr class="memdesc:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task_space reader which provides drop off positions.  <a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">More...</a><br /></td></tr>
+<tr class="separator:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td></tr>
+<tr class="separator:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td></tr>
+<tr class="separator:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Concrete <a class="el" href="classMediator.html">Mediator</a>. </p>
+<p>Base calculation mediator, which mediates agents to form a multi-cell by placing/rotating and perform collision checks </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00022">22</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="acf5ce9f5f854708b8b2a7008d75d0330"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf5ce9f5f854708b8b2a7008d75d0330">&#9670;&nbsp;</a></span>Base_calculation_mediator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Base_calculation_mediator::Base_calculation_mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classBase__calculation__mediator.html" title="Concrete Mediator.">Base_calculation_mediator</a> constructor. </p>
+<p>initializes readers und publisher </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>Ros nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00003">3</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aa03bb145649933b2b362dfc8966f63c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa03bb145649933b2b362dfc8966f63c8">&#9670;&nbsp;</a></span>approximation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::approximation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classCeti__robot.html">Ceti_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Approximates other robots to fit in the workspace. </p>
+<p>Places and rotates robot to fit in a previous robots surrounding </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td>next robot to fit in </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00218">218</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aff019cc13f25228abaf99b4a3fe72c38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff019cc13f25228abaf99b4a3fe72c38">&#9670;&nbsp;</a></span>build_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::build_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::bitset&lt; 3 &gt; &amp;&#160;</td>
+          <td class="paramname"><em>wings</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Resets wings of a robot. </p>
+<p>Rebuild robot wings by comparing robot observer mask and requested configuration </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">wings</td><td>requested wings </td></tr>
+    <tr><td class="paramname">robot</td><td>robot index </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00422">422</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a55975e58dfc863db246224217367c645"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55975e58dfc863db246224217367c645">&#9670;&nbsp;</a></span>calculate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::calculate </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>ground_per_robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Ground position calculator. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">ground_per_robot</td><td><a class="el" href="classRobot.html">Robot</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00140">140</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a2f29ef22d330020bf276cb709c8c8238"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f29ef22d330020bf276cb709c8c8238">&#9670;&nbsp;</a></span>check_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Base_calculation_mediator::check_collision </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>check_collision </p>
+<p>Collsision checker impelementation including Rviz visualization </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td><a class="el" href="classRobot.html">Robot</a> by index </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00045">45</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6804ea3a11a66faf3bcf0429fd016d06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6804ea3a11a66faf3bcf0429fd016d06">&#9670;&nbsp;</a></span>connect_robots()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classRobot.html">Robot</a> Connector implementation. </p>
+<p>registers robot </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00022">22</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6c5b26e596ed3c7fb4d226fa10183c51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c5b26e596ed3c7fb4d226fa10183c51">&#9670;&nbsp;</a></span>generate_grounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::generate_grounds </td>
+          <td>(</td>
+          <td class="paramtype">const tf2::Vector3&#160;</td>
+          <td class="paramname"><em>origin</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const float&#160;</td>
+          <td class="paramname"><em>diameter</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>resolution</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Ground generator. </p>
+<p>initialize descrete ground </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">origin</td><td>Ros nodehandle </td></tr>
+    <tr><td class="paramname">diameter</td><td>Ros nodehandle </td></tr>
+    <tr><td class="paramname">resolution</td><td>Ros nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00009">9</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af175bafdf327cc397ce1c9f42913c83a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af175bafdf327cc397ce1c9f42913c83a">&#9670;&nbsp;</a></span>mediate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classMediator.html">Mediator</a> implementation. </p>
+<p>Places and rotates robots till no collisions exists, all objects are somewhere on the tables </p>
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00099">99</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a62cee1d422407a72223fcee53dbba5ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62cee1d422407a72223fcee53dbba5ba">&#9670;&nbsp;</a></span>publish()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::publish </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classCeti__robot.html">Ceti_robot</a> *&#160;</td>
+          <td class="paramname"><em>r</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Marker publishing methode. </p>
+<p>Publishes all markers of an robot </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">r</td><td><a class="el" href="classRobot.html">Robot</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00441">441</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a00167697941fa249b15bc322e9ecb356"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00167697941fa249b15bc322e9ecb356">&#9670;&nbsp;</a></span>robot_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classRobot__reader.html">Robot_reader</a>* Base_calculation_mediator::robot_reader </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get <a class="el" href="classRobot__reader.html" title="Robot reader.">Robot_reader</a>. </p>
+<dl class="section return"><dt>Returns</dt><dd>robot reader </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00060">60</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a3fc38aa682c47686159c0c67b7685fd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fc38aa682c47686159c0c67b7685fd7">&#9670;&nbsp;</a></span>set_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::set_panel </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Sets panels for robots. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00028">28</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1e5a579ea6a516ec8537b4b3d506e4ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e5a579ea6a516ec8537b4b3d506e4ae">&#9670;&nbsp;</a></span>setup_rviz()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::setup_rviz </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Rviz setup methode. </p>
+
+</div>
+</div>
+<a id="a7d366c17687d6e3e4d3bc27c888ee5f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d366c17687d6e3e4d3bc27c888ee5f5">&#9670;&nbsp;</a></span>wing_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classWing__reader.html">Wing_reader</a>* Base_calculation_mediator::wing_reader </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get <a class="el" href="classWing__reader.html" title="Wing reader.">Wing_reader</a>. </p>
+<dl class="section return"><dt>Returns</dt><dd>wing reader </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00054">54</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a1e710053c31cd1f4da64b45a11c7b660"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e710053c31cd1f4da64b45a11c7b660">&#9670;&nbsp;</a></span>write_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Base_calculation_mediator::write_file </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classCeti__robot.html">Ceti_robot</a> *&#160;</td>
+          <td class="paramname"><em>A</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classCeti__robot.html">Ceti_robot</a> *&#160;</td>
+          <td class="paramname"><em>B</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Writes result file. </p>
+<p>Writes Protobuff file containing all robots, panels, Drop off locations and actual box positions </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">A</td><td>Robots </td></tr>
+    <tr><td class="paramname">B</td><td>Robots </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8cpp_source.html#l00299">299</a> of file <a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a008b22e99593f2fcbff3c6e26ae5ddbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a008b22e99593f2fcbff3c6e26ae5ddbe">&#9670;&nbsp;</a></span>grounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt; &gt; Base_calculation_mediator::grounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Possible ground positions per robots. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00029">29</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a5419d9798ac36cd945706721aa542278"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5419d9798ac36cd945706721aa542278">&#9670;&nbsp;</a></span>pub_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;ros::Publisher&gt; Base_calculation_mediator::pub_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Publisher sharing visualization messages of the scene. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00024">24</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a3a04eb51e61a15179088786b9555e000"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a04eb51e61a15179088786b9555e000">&#9670;&nbsp;</a></span>robot_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classRobot__reader.html">Robot_reader</a>&gt; Base_calculation_mediator::robot_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classRobot__reader.html" title="Robot reader.">Robot_reader</a> which collects robot poses. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00026">26</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae1c0060fbd229bb5c7c8229e82200fc0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1c0060fbd229bb5c7c8229e82200fc0">&#9670;&nbsp;</a></span>wing_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classWing__reader.html">Wing_reader</a>&gt; Base_calculation_mediator::wing_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classWing__reader.html" title="Wing reader.">Wing_reader</a> which collects panel information of robots. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00025">25</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a8274031d01b4648815a25e9e545178c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8274031d01b4648815a25e9e545178c5">&#9670;&nbsp;</a></span>wings_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt; &gt; Base_calculation_mediator::wings_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Possible panels per robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="base__calculation__mediator_8h_source.html#l00030">30</a> of file <a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="base__calculation__mediator_8h_source.html">base_calculation_mediator.h</a></li>
+<li><a class="el" href="base__calculation__mediator_8cpp_source.html">base_calculation_mediator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classBase__calculation__mediator__inherit__graph.map b/doc/html/classBase__calculation__mediator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..8a952892e8c601080580e984e17f245275571209
--- /dev/null
+++ b/doc/html/classBase__calculation__mediator__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Base_calculation_mediator" name="Base_calculation_mediator">
+<area shape="rect" id="node1" title="Concrete Mediator." alt="" coords="5,80,204,107"/>
+<area shape="rect" id="node2" href="$classAbstract__mediator.html" title="Abstract mediator." alt="" coords="33,5,176,32"/>
+</map>
diff --git a/doc/html/classBase__calculation__mediator__inherit__graph.md5 b/doc/html/classBase__calculation__mediator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d473cd539575c4c955c63655acc3a68ede0ce61a
--- /dev/null
+++ b/doc/html/classBase__calculation__mediator__inherit__graph.md5
@@ -0,0 +1 @@
+0918e76f019fffb7532823b4fbee2ca4
\ No newline at end of file
diff --git a/doc/html/classBase__calculation__mediator__inherit__graph.png b/doc/html/classBase__calculation__mediator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..a751aa5878b38150102ca09d47ca0639cd7d6675
Binary files /dev/null and b/doc/html/classBase__calculation__mediator__inherit__graph.png differ
diff --git a/doc/html/classCeti__robot-members.html b/doc/html/classCeti__robot-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..90dc4a828b74a7445369513026720b23402c68eb
--- /dev/null
+++ b/doc/html/classCeti__robot-members.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Ceti_robot Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classCeti__robot.html">Ceti_robot</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">access_fields</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a></td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">add_coll_markers</a>(std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; marker)</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">bounds</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;str) override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">coll_markers</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">coll_markers_</a></td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">generate_access_fields</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">in_collision</a>(Ceti_robot *R)</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">notify</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">observer_mask</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">observer_mask_</a></td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a></td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">register_observers</a>(std::unique_ptr&lt; Abstract_robot_element &gt; wd)</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">reset</a>()</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">robot_root_bounds</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">root_tf</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">Abstract_robot::size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>() override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td><td class="entry"><a class="el" href="classCeti__robot.html">Ceti_robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCeti__robot.html b/doc/html/classCeti__robot.html
new file mode 100644
index 0000000000000000000000000000000000000000..734831d28b46388e94e81f3049329dc8faa5c7f2
--- /dev/null
+++ b/doc/html/classCeti__robot.html
@@ -0,0 +1,930 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Ceti_robot Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classCeti__robot-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Ceti_robot Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Concrete Ceti-Robot.  
+ <a href="classCeti__robot.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Ceti_robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="classCeti__robot__inherit__graph.png" border="0" usemap="#Ceti__robot_inherit__map" alt="Inheritance graph"/></div>
+<map name="Ceti__robot_inherit__map" id="Ceti__robot_inherit__map">
+<area shape="rect" title="Concrete Ceti&#45;Robot." alt="" coords="19,80,109,107"/>
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a4ad187750675fbe7ba8ded55f2c0e3b7"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">access_fields</a> ()</td></tr>
+<tr class="memdesc:a4ad187750675fbe7ba8ded55f2c0e3b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get access fields.  <a href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">More...</a><br /></td></tr>
+<tr class="separator:a4ad187750675fbe7ba8ded55f2c0e3b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85afa4e99b4d31282a0b1e7cba45176c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">add_coll_markers</a> (std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; marker)</td></tr>
+<tr class="memdesc:a85afa4e99b4d31282a0b1e7cba45176c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds marker to array.  <a href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">More...</a><br /></td></tr>
+<tr class="separator:a85afa4e99b4d31282a0b1e7cba45176c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bca93f0ea688ce45a50b06edae104df"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">bounds</a> () override</td></tr>
+<tr class="separator:a2bca93f0ea688ce45a50b06edae104df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade0920ab43886af89a431f7808207efd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot</a> (std::string &amp;<a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a>, tf2::Transform <a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a>, tf2::Vector3 <a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a>)</td></tr>
+<tr class="memdesc:ade0920ab43886af89a431f7808207efd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ceti robot constructor.  <a href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">More...</a><br /></td></tr>
+<tr class="separator:ade0920ab43886af89a431f7808207efd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a128b5891d5519855c387dd0fd3b04384"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;str) override</td></tr>
+<tr class="memdesc:a128b5891d5519855c387dd0fd3b04384"><td class="mdescLeft">&#160;</td><td class="mdescRight">Collsion calculation for single objects.  <a href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">More...</a><br /></td></tr>
+<tr class="separator:a128b5891d5519855c387dd0fd3b04384"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e1de6f139604143bb19b34abbfaeb"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">coll_markers</a> ()</td></tr>
+<tr class="memdesc:aa12e1de6f139604143bb19b34abbfaeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get collision markers.  <a href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">More...</a><br /></td></tr>
+<tr class="separator:aa12e1de6f139604143bb19b34abbfaeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace21ef0128109d49de07e1fe675b595d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">generate_access_fields</a> ()</td></tr>
+<tr class="memdesc:ace21ef0128109d49de07e1fe675b595d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate access fields as surrounding poses for possible robots.  <a href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">More...</a><br /></td></tr>
+<tr class="separator:ace21ef0128109d49de07e1fe675b595d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0e5f7417926e50ccb607c6612170687"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">in_collision</a> (<a class="el" href="classCeti__robot.html">Ceti_robot</a> *R)</td></tr>
+<tr class="memdesc:af0e5f7417926e50ccb607c6612170687"><td class="mdescLeft">&#160;</td><td class="mdescRight">Collsion calculation.  <a href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">More...</a><br /></td></tr>
+<tr class="separator:af0e5f7417926e50ccb607c6612170687"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5776cb1039f39138f46c3a13799ee3b"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">name</a> () override</td></tr>
+<tr class="separator:ac5776cb1039f39138f46c3a13799ee3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50602f1990429a31148ec90369c8b390"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">notify</a> () override</td></tr>
+<tr class="memdesc:a50602f1990429a31148ec90369c8b390"><td class="mdescLeft">&#160;</td><td class="mdescRight">Observer pattern.  <a href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">More...</a><br /></td></tr>
+<tr class="separator:a50602f1990429a31148ec90369c8b390"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afeb11427714da34b8203de2d094dd536"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">observer_mask</a> ()</td></tr>
+<tr class="separator:afeb11427714da34b8203de2d094dd536"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a948403a8fba6220b86d2cda6cb74a326"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">observers</a> ()</td></tr>
+<tr class="memdesc:a948403a8fba6220b86d2cda6cb74a326"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get observers.  <a href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">More...</a><br /></td></tr>
+<tr class="separator:a948403a8fba6220b86d2cda6cb74a326"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac28cfaf3ea80e2d3271c0c8ca634dc77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">register_observers</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; wd)</td></tr>
+<tr class="memdesc:ac28cfaf3ea80e2d3271c0c8ca634dc77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register observers in vector.  <a href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">More...</a><br /></td></tr>
+<tr class="separator:ac28cfaf3ea80e2d3271c0c8ca634dc77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9db994a08373f0c75bd69226855f2b54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">reset</a> ()</td></tr>
+<tr class="memdesc:a9db994a08373f0c75bd69226855f2b54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resset all robot properties.  <a href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">More...</a><br /></td></tr>
+<tr class="separator:a9db994a08373f0c75bd69226855f2b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31ba978529d6f3039ff7223f90d864ec"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">robot_root_bounds</a> () override</td></tr>
+<tr class="separator:a31ba978529d6f3039ff7223f90d864ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c9612f7a87974aa64622fd4acd8123e"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">root_tf</a> () override</td></tr>
+<tr class="separator:a4c9612f7a87974aa64622fd4acd8123e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86d9f27c0ebcbc7b7ce79a3ebfe60a16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a86d9f27c0ebcbc7b7ce79a3ebfe60a16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafdcb4ce7d655b291170818c43162aa7"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">size</a> () override</td></tr>
+<tr class="separator:aafdcb4ce7d655b291170818c43162aa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60528a5a7c83e0b15d9fee091b00e5b3"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">tf</a> () override</td></tr>
+<tr class="separator:a60528a5a7c83e0b15d9fee091b00e5b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bfe48e6325263ae5607a5621dedebe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td></tr>
+<tr class="memdesc:a8bfe48e6325263ae5607a5621dedebe9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Object counter.  <a href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">More...</a><br /></td></tr>
+<tr class="separator:a8bfe48e6325263ae5607a5621dedebe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ae788dd0c96ea0112e46c0c817eb40466"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">access_fields_</a></td></tr>
+<tr class="memdesc:ae788dd0c96ea0112e46c0c817eb40466"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serrounding Fields shared pointers.  <a href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">More...</a><br /></td></tr>
+<tr class="separator:ae788dd0c96ea0112e46c0c817eb40466"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96c4c46c18217a5f55bbb9e8d57d0b9b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::shared_ptr&lt; moveit_msgs::CollisionObject &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">coll_markers_</a></td></tr>
+<tr class="memdesc:a96c4c46c18217a5f55bbb9e8d57d0b9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">to be checked  <a href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">More...</a><br /></td></tr>
+<tr class="separator:a96c4c46c18217a5f55bbb9e8d57d0b9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfdaf371d8c0ba26fe6ea193539cd2f9"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">observer_mask_</a></td></tr>
+<tr class="memdesc:adfdaf371d8c0ba26fe6ea193539cd2f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bitmap to set observers.  <a href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">More...</a><br /></td></tr>
+<tr class="separator:adfdaf371d8c0ba26fe6ea193539cd2f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8c6391807befcfd2d431ad180a3beaf"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">observers_</a></td></tr>
+<tr class="memdesc:af8c6391807befcfd2d431ad180a3beaf"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classWing.html">Wing</a> shared pointers.  <a href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">More...</a><br /></td></tr>
+<tr class="separator:af8c6391807befcfd2d431ad180a3beaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Concrete Ceti-Robot. </p>
+<p>Refers especially to Robot-Arms mounted on a table of variable size. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00022">22</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ade0920ab43886af89a431f7808207efd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade0920ab43886af89a431f7808207efd">&#9670;&nbsp;</a></span>Ceti_robot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Ceti_robot::Ceti_robot </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Ceti robot constructor. </p>
+<p>Initializes Ceti-Robot, calculates bounds out of arm and table size. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">name</td><td>std::string as <a class="el" href="classRobot.html">Robot</a> name, following the Robotarm([0-9]+) pattern </td></tr>
+    <tr><td class="paramname">tf</td><td>Table center pose </td></tr>
+    <tr><td class="paramname">size</td><td>Table size </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00003">3</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a4ad187750675fbe7ba8ded55f2c0e3b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ad187750675fbe7ba8ded55f2c0e3b7">&#9670;&nbsp;</a></span>access_fields()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt;&amp; Ceti_robot::access_fields </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get access fields. </p>
+<dl class="section return"><dt>Returns</dt><dd>Access fields vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00059">59</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a85afa4e99b4d31282a0b1e7cba45176c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85afa4e99b4d31282a0b1e7cba45176c">&#9670;&nbsp;</a></span>add_coll_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::add_coll_markers </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; moveit_msgs::CollisionObject &gt;&#160;</td>
+          <td class="paramname"><em>marker</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Adds marker to array. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">marker</td><td>CollisionObject which will be add to marker vector </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00065">65</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a2bca93f0ea688ce45a50b06edae104df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bca93f0ea688ce45a50b06edae104df">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Ceti_robot::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00046">46</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a128b5891d5519855c387dd0fd3b04384"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a128b5891d5519855c387dd0fd3b04384">&#9670;&nbsp;</a></span>check_single_object_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Ceti_robot::check_single_object_collision </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>str</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Collsion calculation for single objects. </p>
+<p>Checks collision for a single pose </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">obj</td><td>object pose to check </td></tr>
+    <tr><td class="paramname">str</td><td>name of colliding obj </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>bool if collision true, otherwise false </dd></dl>
+
+<p>Implements <a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00065">65</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa12e1de6f139604143bb19b34abbfaeb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa12e1de6f139604143bb19b34abbfaeb">&#9670;&nbsp;</a></span>coll_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::shared_ptr&lt;moveit_msgs::CollisionObject&gt; &gt; Ceti_robot::coll_markers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get collision markers. </p>
+<dl class="section return"><dt>Returns</dt><dd>marker CollisionObject which will be add to marker vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00071">71</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ace21ef0128109d49de07e1fe675b595d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace21ef0128109d49de07e1fe675b595d">&#9670;&nbsp;</a></span>generate_access_fields()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::generate_access_fields </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Generate access fields as surrounding poses for possible robots. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00012">12</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af0e5f7417926e50ccb607c6612170687"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0e5f7417926e50ccb607c6612170687">&#9670;&nbsp;</a></span>in_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Ceti_robot::in_collision </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classCeti__robot.html">Ceti_robot</a> *&#160;</td>
+          <td class="paramname"><em>R</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Collsion calculation. </p>
+<p>Iterates over <a class="el" href="classRobot.html">Robot</a> to calculate area und check collisions by other robot bounds </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">R</td><td><a class="el" href="classRobot.html">Robot</a> which bounds are to check for collisions </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>bool true if collision, false otherwise </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00118">118</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac5776cb1039f39138f46c3a13799ee3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5776cb1039f39138f46c3a13799ee3b">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Ceti_robot::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00042">42</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a50602f1990429a31148ec90369c8b390"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50602f1990429a31148ec90369c8b390">&#9670;&nbsp;</a></span>notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::notify </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Observer pattern. </p>
+<p>When changing pose, any observer calculates its new position in world frame </p>
+
+<p>Implements <a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00113">113</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="afeb11427714da34b8203de2d094dd536"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afeb11427714da34b8203de2d094dd536">&#9670;&nbsp;</a></span>observer_mask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::bitset&lt;3&gt; Ceti_robot::observer_mask </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00117">117</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a948403a8fba6220b86d2cda6cb74a326"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a948403a8fba6220b86d2cda6cb74a326">&#9670;&nbsp;</a></span>observers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt;&amp; Ceti_robot::observers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get observers. </p>
+<dl class="section return"><dt>Returns</dt><dd>observer vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00053">53</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ac28cfaf3ea80e2d3271c0c8ca634dc77"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac28cfaf3ea80e2d3271c0c8ca634dc77">&#9670;&nbsp;</a></span>register_observers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::register_observers </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td>
+          <td class="paramname"><em>wd</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Register observers in vector. </p>
+<p>manipulates access fields and adds observer+ </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">wd</td><td><a class="el" href="classWing.html">Wing</a> observer </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00162">162</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9db994a08373f0c75bd69226855f2b54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9db994a08373f0c75bd69226855f2b54">&#9670;&nbsp;</a></span>reset()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::reset </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Resset all robot properties. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00106">106</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a31ba978529d6f3039ff7223f90d864ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31ba978529d6f3039ff7223f90d864ec">&#9670;&nbsp;</a></span>robot_root_bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Ceti_robot::robot_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00047">47</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c9612f7a87974aa64622fd4acd8123e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c9612f7a87974aa64622fd4acd8123e">&#9670;&nbsp;</a></span>root_tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Ceti_robot::root_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00045">45</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a86d9f27c0ebcbc7b7ce79a3ebfe60a16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">&#9670;&nbsp;</a></span>set_observer_mask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::set_observer_mask </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>i</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00118">118</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aafdcb4ce7d655b291170818c43162aa7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafdcb4ce7d655b291170818c43162aa7">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Ceti_robot::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00044">44</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a60528a5a7c83e0b15d9fee091b00e5b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60528a5a7c83e0b15d9fee091b00e5b3">&#9670;&nbsp;</a></span>tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Ceti_robot::tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00043">43</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a8bfe48e6325263ae5607a5621dedebe9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bfe48e6325263ae5607a5621dedebe9">&#9670;&nbsp;</a></span>workload_checker()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ceti_robot::workload_checker </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>count_vector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Object counter. </p>
+<p>counds objects attached to table or wings </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">count_vector</td><td>count per robot element </td></tr>
+    <tr><td class="paramname">obj</td><td>object to add </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8cpp_source.html#l00038">38</a> of file <a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ae788dd0c96ea0112e46c0c817eb40466"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae788dd0c96ea0112e46c0c817eb40466">&#9670;&nbsp;</a></span>access_fields_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt; Ceti_robot::access_fields_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Serrounding Fields shared pointers. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00025">25</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a96c4c46c18217a5f55bbb9e8d57d0b9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96c4c46c18217a5f55bbb9e8d57d0b9b">&#9670;&nbsp;</a></span>coll_markers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::shared_ptr&lt;moveit_msgs::CollisionObject&gt; &gt; Ceti_robot::coll_markers_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>to be checked </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00026">26</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="adfdaf371d8c0ba26fe6ea193539cd2f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfdaf371d8c0ba26fe6ea193539cd2f9">&#9670;&nbsp;</a></span>observer_mask_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::bitset&lt;3&gt; Ceti_robot::observer_mask_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Bitmap to set observers. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00027">27</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="af8c6391807befcfd2d431ad180a3beaf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8c6391807befcfd2d431ad180a3beaf">&#9670;&nbsp;</a></span>observers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&gt; &gt; Ceti_robot::observers_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classWing.html">Wing</a> shared pointers. </p>
+
+<p class="definition">Definition at line <a class="el" href="ceti__robot_8h_source.html#l00024">24</a> of file <a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="ceti__robot_8h_source.html">ceti_robot.h</a></li>
+<li><a class="el" href="ceti__robot_8cpp_source.html">ceti_robot.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCeti__robot__inherit__graph.map b/doc/html/classCeti__robot__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..925af9bbd09798aca78a6587b39023df41e52b6d
--- /dev/null
+++ b/doc/html/classCeti__robot__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Ceti_robot" name="Ceti_robot">
+<area shape="rect" id="node1" title="Concrete Ceti&#45;Robot." alt="" coords="19,80,109,107"/>
+<area shape="rect" id="node2" href="$classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
diff --git a/doc/html/classCeti__robot__inherit__graph.md5 b/doc/html/classCeti__robot__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..176849c67be118c62d0bd7e7dc017a957e7d5485
--- /dev/null
+++ b/doc/html/classCeti__robot__inherit__graph.md5
@@ -0,0 +1 @@
+0fb026deab2a11adfc0d86f6ced5937a
\ No newline at end of file
diff --git a/doc/html/classCeti__robot__inherit__graph.png b/doc/html/classCeti__robot__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..3203cd0cf5b570275321bff40644824fc913a292
Binary files /dev/null and b/doc/html/classCeti__robot__inherit__graph.png differ
diff --git a/doc/html/classCollision__helper-members.html b/doc/html/classCollision__helper-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..8ae057b41be29d426a185a391dc22c6f800dbde7
--- /dev/null
+++ b/doc/html/classCollision__helper-members.html
@@ -0,0 +1,39 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Collision_helper Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classCollision__helper.html">Collision_helper</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">collision_detector</a>(const std::string &amp;object1_name, const std::string &amp;object2_name)</td><td class="entry"><a class="el" href="classCollision__helper.html">Collision_helper</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper</a>()=default</td><td class="entry"><a class="el" href="classCollision__helper.html">Collision_helper</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">~Collision_helper</a>()=default</td><td class="entry"><a class="el" href="classCollision__helper.html">Collision_helper</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCollision__helper.html b/doc/html/classCollision__helper.html
new file mode 100644
index 0000000000000000000000000000000000000000..10ea5d2c7a96ca03a153c7e5c8c28159a1b20659
--- /dev/null
+++ b/doc/html/classCollision__helper.html
@@ -0,0 +1,146 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Collision_helper Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classCollision__helper-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Collision_helper Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="collision__helper_8h_source.html">collision_helper.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Collision_helper:</div>
+<div class="dyncontent">
+<div class="center"><img src="classCollision__helper__inherit__graph.png" border="0" usemap="#Collision__helper_inherit__map" alt="Inheritance graph"/></div>
+<map name="Collision__helper_inherit__map" id="Collision__helper_inherit__map">
+<area shape="rect" title=" " alt="" coords="14,95,141,121"/>
+<area shape="rect" title=" " alt="" coords="5,5,149,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0969d2a29f043ad3509bf174ecc103ec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">collision_detector</a> (const std::string &amp;object1_name, const std::string &amp;object2_name)</td></tr>
+<tr class="separator:a0969d2a29f043ad3509bf174ecc103ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1637a6d6db9a3a3458ab0eec053c5d9a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper</a> ()=default</td></tr>
+<tr class="separator:a1637a6d6db9a3a3458ab0eec053c5d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3578a1bf2e59c1f5e55fc396ce966e9b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">~Collision_helper</a> ()=default</td></tr>
+<tr class="separator:a3578a1bf2e59c1f5e55fc396ce966e9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="collision__helper_8h_source.html#l00010">10</a> of file <a class="el" href="collision__helper_8h_source.html">collision_helper.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a1637a6d6db9a3a3458ab0eec053c5d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1637a6d6db9a3a3458ab0eec053c5d9a">&#9670;&nbsp;</a></span>Collision_helper()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Collision_helper::Collision_helper </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3578a1bf2e59c1f5e55fc396ce966e9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3578a1bf2e59c1f5e55fc396ce966e9b">&#9670;&nbsp;</a></span>~Collision_helper()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Collision_helper::~Collision_helper </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a0969d2a29f043ad3509bf174ecc103ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0969d2a29f043ad3509bf174ecc103ec">&#9670;&nbsp;</a></span>collision_detector()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Collision_helper::collision_detector </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>object1_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>object2_name</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="collision__helper_8cpp_source.html#l00005">5</a> of file <a class="el" href="collision__helper_8cpp_source.html">collision_helper.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="collision__helper_8h_source.html">collision_helper.h</a></li>
+<li><a class="el" href="collision__helper_8cpp_source.html">collision_helper.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCollision__helper__inherit__graph.map b/doc/html/classCollision__helper__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..9579a4f74925a47aa220eca4462754c3c8a76358
--- /dev/null
+++ b/doc/html/classCollision__helper__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Collision_helper" name="Collision_helper">
+<area shape="rect" id="node1" title=" " alt="" coords="14,95,141,121"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,5,149,47"/>
+</map>
diff --git a/doc/html/classCollision__helper__inherit__graph.md5 b/doc/html/classCollision__helper__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..bb1febd21586c8d0b82a6c95a0dd6ee33c291488
--- /dev/null
+++ b/doc/html/classCollision__helper__inherit__graph.md5
@@ -0,0 +1 @@
+bfa6f4cc2990a0ebd64788fd1428d9cc
\ No newline at end of file
diff --git a/doc/html/classCollision__helper__inherit__graph.png b/doc/html/classCollision__helper__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..58d97603ec20bc06683f77a826219cf507e85ecb
Binary files /dev/null and b/doc/html/classCollision__helper__inherit__graph.png differ
diff --git a/doc/html/classCuboid__reader-members.html b/doc/html/classCuboid__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..27ccacda09cd96009b39d12cd7784efd15873880
--- /dev/null
+++ b/doc/html/classCuboid__reader-members.html
@@ -0,0 +1,47 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Cuboid_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classCuboid__reader.html">Cuboid_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">cuboid_bin</a>()</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a></td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">cuboid_obstacle</a>()</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a></td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">read</a>() override</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">set_cuboid_bin_data</a>(std::vector&lt; Cuboid &gt; &amp;cuboid_data)</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">set_cuboid_obstacle_data</a>(std::vector&lt; Cuboid &gt; &amp;cuboid_data)</td><td class="entry"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCuboid__reader.html b/doc/html/classCuboid__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ccaf2d1b736f2e5552060896a982eaa625f6b0e
--- /dev/null
+++ b/doc/html/classCuboid__reader.html
@@ -0,0 +1,356 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Cuboid_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classCuboid__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Cuboid_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Cuboid reader.  
+ <a href="classCuboid__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Cuboid_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classCuboid__reader__inherit__graph.png" border="0" usemap="#Cuboid__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Cuboid__reader_inherit__map" id="Cuboid__reader_inherit__map">
+<area shape="rect" title="Cuboid reader." alt="" coords="35,80,151,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3f80a47bd3b32eb3daaa7ee4c9dbd670"><td class="memItemLeft" align="right" valign="top">std::vector&lt; Cuboid &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">cuboid_bin</a> ()</td></tr>
+<tr class="memdesc:a3f80a47bd3b32eb3daaa7ee4c9dbd670"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Cuboid box.  <a href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">More...</a><br /></td></tr>
+<tr class="separator:a3f80a47bd3b32eb3daaa7ee4c9dbd670"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a499edb06157aac6287cdf683b0316a8b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; Cuboid &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">cuboid_obstacle</a> ()</td></tr>
+<tr class="memdesc:a499edb06157aac6287cdf683b0316a8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Cuboid obstacle.  <a href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">More...</a><br /></td></tr>
+<tr class="separator:a499edb06157aac6287cdf683b0316a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23a0d80e92f06c576ee242239f27a68f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a23a0d80e92f06c576ee242239f27a68f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cuboid reader constructor.  <a href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">More...</a><br /></td></tr>
+<tr class="separator:a23a0d80e92f06c576ee242239f27a68f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9fb23e8916e3288d8172725b8cd1842"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">read</a> () override</td></tr>
+<tr class="memdesc:aa9fb23e8916e3288d8172725b8cd1842"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">More...</a><br /></td></tr>
+<tr class="separator:aa9fb23e8916e3288d8172725b8cd1842"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79e976d81d68adfc6b15d5b6879a726e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">set_cuboid_bin_data</a> (std::vector&lt; Cuboid &gt; &amp;cuboid_data)</td></tr>
+<tr class="memdesc:a79e976d81d68adfc6b15d5b6879a726e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Cuboid box.  <a href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">More...</a><br /></td></tr>
+<tr class="separator:a79e976d81d68adfc6b15d5b6879a726e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace0ace01df2eeb0607e8ad9d2764200d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">set_cuboid_obstacle_data</a> (std::vector&lt; Cuboid &gt; &amp;cuboid_data)</td></tr>
+<tr class="memdesc:ace0ace01df2eeb0607e8ad9d2764200d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Cuboid obstacle.  <a href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">More...</a><br /></td></tr>
+<tr class="separator:ace0ace01df2eeb0607e8ad9d2764200d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ae02b31c6baf83e5d957170a7d454224b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; Cuboid &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a></td></tr>
+<tr class="memdesc:ae02b31c6baf83e5d957170a7d454224b"><td class="mdescLeft">&#160;</td><td class="mdescRight">As box defined object.  <a href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">More...</a><br /></td></tr>
+<tr class="separator:ae02b31c6baf83e5d957170a7d454224b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8a5a286ea79d157c294d0f1efc9ce8a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; Cuboid &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a></td></tr>
+<tr class="memdesc:af8a5a286ea79d157c294d0f1efc9ce8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">As obstacle defined objects.  <a href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">More...</a><br /></td></tr>
+<tr class="separator:af8a5a286ea79d157c294d0f1efc9ce8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Cuboid reader. </p>
+<p>Reader which returns cuboid objects as defined in gb_grasp </p>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00017">17</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a23a0d80e92f06c576ee242239f27a68f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23a0d80e92f06c576ee242239f27a68f">&#9670;&nbsp;</a></span>Cuboid_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Cuboid_reader::Cuboid_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Cuboid reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00028">28</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a3f80a47bd3b32eb3daaa7ee4c9dbd670"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f80a47bd3b32eb3daaa7ee4c9dbd670">&#9670;&nbsp;</a></span>cuboid_bin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;Cuboid&gt; Cuboid_reader::cuboid_bin </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get Cuboid box. </p>
+<dl class="section return"><dt>Returns</dt><dd>Cuboid box vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00046">46</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a499edb06157aac6287cdf683b0316a8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a499edb06157aac6287cdf683b0316a8b">&#9670;&nbsp;</a></span>cuboid_obstacle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;Cuboid&gt; Cuboid_reader::cuboid_obstacle </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get Cuboid obstacle. </p>
+<dl class="section return"><dt>Returns</dt><dd>Cuboid obstacle vector </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00052">52</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="aa9fb23e8916e3288d8172725b8cd1842"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9fb23e8916e3288d8172725b8cd1842">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Cuboid_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="cuboid__reader_8cpp_source.html">cuboid_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a79e976d81d68adfc6b15d5b6879a726e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79e976d81d68adfc6b15d5b6879a726e">&#9670;&nbsp;</a></span>set_cuboid_bin_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Cuboid_reader::set_cuboid_bin_data </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; Cuboid &gt; &amp;&#160;</td>
+          <td class="paramname"><em>cuboid_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set Cuboid box. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">cuboid_data</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00034">34</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="ace0ace01df2eeb0607e8ad9d2764200d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace0ace01df2eeb0607e8ad9d2764200d">&#9670;&nbsp;</a></span>set_cuboid_obstacle_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Cuboid_reader::set_cuboid_obstacle_data </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; Cuboid &gt; &amp;&#160;</td>
+          <td class="paramname"><em>cuboid_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set Cuboid obstacle. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">cuboid_data</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00040">40</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ae02b31c6baf83e5d957170a7d454224b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae02b31c6baf83e5d957170a7d454224b">&#9670;&nbsp;</a></span>cuboid_box_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;Cuboid&gt; Cuboid_reader::cuboid_box_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>As box defined object. </p>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00019">19</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="af8a5a286ea79d157c294d0f1efc9ce8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8a5a286ea79d157c294d0f1efc9ce8a">&#9670;&nbsp;</a></span>cuboid_obstacle_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;Cuboid&gt; Cuboid_reader::cuboid_obstacle_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>As obstacle defined objects. </p>
+
+<p class="definition">Definition at line <a class="el" href="cuboid__reader_8h_source.html#l00020">20</a> of file <a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="cuboid__reader_8h_source.html">cuboid_reader.h</a></li>
+<li><a class="el" href="cuboid__reader_8cpp_source.html">cuboid_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classCuboid__reader__inherit__graph.map b/doc/html/classCuboid__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..57c0b3d9c2df855b2d0cb662d15ff5dc5620bc65
--- /dev/null
+++ b/doc/html/classCuboid__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Cuboid_reader" name="Cuboid_reader">
+<area shape="rect" id="node1" title="Cuboid reader." alt="" coords="35,80,151,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classCuboid__reader__inherit__graph.md5 b/doc/html/classCuboid__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..deb3cc55f572699b36c1364328476953746c787c
--- /dev/null
+++ b/doc/html/classCuboid__reader__inherit__graph.md5
@@ -0,0 +1 @@
+d89c69c97675b68798f7ce67586dc990
\ No newline at end of file
diff --git a/doc/html/classCuboid__reader__inherit__graph.png b/doc/html/classCuboid__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..066198c1a1abdfc3244e3964b03cc4a2f2341353
Binary files /dev/null and b/doc/html/classCuboid__reader__inherit__graph.png differ
diff --git a/doc/html/classField-members.html b/doc/html/classField-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..c02d4999ccfe35aec6b430245836d348235e9afc
--- /dev/null
+++ b/doc/html/classField-members.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Field Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classField.html">Field</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">bounds</a>() override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">name</a>() override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">set_name</a>(std::string str)</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">set_set</a>(tf2::Vector3 &amp;vec)</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">size</a>() override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">world_tf</a>() override</td><td class="entry"><a class="el" href="classField.html">Field</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classField.html b/doc/html/classField.html
new file mode 100644
index 0000000000000000000000000000000000000000..5307f64e45c7893d295cbc377630edec1b7609b2
--- /dev/null
+++ b/doc/html/classField.html
@@ -0,0 +1,395 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Field Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classField-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Field Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="impl_2field_8h_source.html">field.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Field:</div>
+<div class="dyncontent">
+<div class="center"><img src="classField__inherit__graph.png" border="0" usemap="#Field_inherit__map" alt="Inheritance graph"/></div>
+<map name="Field_inherit__map" id="Field_inherit__map">
+<area shape="rect" title=" " alt="" coords="69,80,121,107"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a12dca5fcc8ba8bb0191101a5f40db023"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">bounds</a> () override</td></tr>
+<tr class="separator:a12dca5fcc8ba8bb0191101a5f40db023"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3937b0953056acede15814ada1053f9a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a3937b0953056acede15814ada1053f9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3937b0953056acede15814ada1053f9a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a3937b0953056acede15814ada1053f9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63a8a02d41e3e0f9eed98c5136a2216a"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">name</a> () override</td></tr>
+<tr class="separator:a63a8a02d41e3e0f9eed98c5136a2216a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1cad38d7a84b8363bf9ab7d2de11cc2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">set_name</a> (std::string str)</td></tr>
+<tr class="separator:ae1cad38d7a84b8363bf9ab7d2de11cc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e8e789d6defcbc56d62e05a29d452fb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">set_set</a> (tf2::Vector3 &amp;vec)</td></tr>
+<tr class="separator:a6e8e789d6defcbc56d62e05a29d452fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac76cd0ffa4b2e361dd0e9ce1fd601034"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">size</a> () override</td></tr>
+<tr class="separator:ac76cd0ffa4b2e361dd0e9ce1fd601034"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e927f0256af43c7f9bc45177adb6da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a5e927f0256af43c7f9bc45177adb6da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e927f0256af43c7f9bc45177adb6da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a5e927f0256af43c7f9bc45177adb6da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a769e61adfbb8e8b261da88fab1190f4d"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">world_tf</a> () override</td></tr>
+<tr class="separator:a769e61adfbb8e8b261da88fab1190f4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="impl_2field_8h_source.html#l00007">7</a> of file <a class="el" href="impl_2field_8h_source.html">impl/field.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a3937b0953056acede15814ada1053f9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3937b0953056acede15814ada1053f9a">&#9670;&nbsp;</a></span>Field() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Field::Field </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2field_8h_source.html#l00009">9</a> of file <a class="el" href="impl_2field_8h_source.html">impl/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a3937b0953056acede15814ada1053f9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3937b0953056acede15814ada1053f9a">&#9670;&nbsp;</a></span>Field() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Field::Field </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a12dca5fcc8ba8bb0191101a5f40db023"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12dca5fcc8ba8bb0191101a5f40db023">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Field::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00016">16</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a63a8a02d41e3e0f9eed98c5136a2216a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63a8a02d41e3e0f9eed98c5136a2216a">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Field::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00018">18</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="ae1cad38d7a84b8363bf9ab7d2de11cc2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1cad38d7a84b8363bf9ab7d2de11cc2">&#9670;&nbsp;</a></span>set_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field::set_name </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>str</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00011">11</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a6e8e789d6defcbc56d62e05a29d452fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e8e789d6defcbc56d62e05a29d452fb">&#9670;&nbsp;</a></span>set_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field::set_set </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00012">12</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="ac76cd0ffa4b2e361dd0e9ce1fd601034"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac76cd0ffa4b2e361dd0e9ce1fd601034">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Field::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00019">19</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a5e927f0256af43c7f9bc45177adb6da0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e927f0256af43c7f9bc45177adb6da0">&#9670;&nbsp;</a></span>update() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="impl_2field_8h_source.html#l00011">11</a> of file <a class="el" href="impl_2field_8h_source.html">impl/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a5e927f0256af43c7f9bc45177adb6da0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e927f0256af43c7f9bc45177adb6da0">&#9670;&nbsp;</a></span>update() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00014">14</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<a id="a769e61adfbb8e8b261da88fab1190f4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a769e61adfbb8e8b261da88fab1190f4d">&#9670;&nbsp;</a></span>world_tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Field::world_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__element_2observers_2field_8h_source.html#l00017">17</a> of file <a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="impl_2field_8h_source.html">impl/field.h</a></li>
+<li><a class="el" href="field_8cpp_source.html">field.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classField__inherit__graph.map b/doc/html/classField__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..13edd590aad46b1eb3d673d664e718db4087a9d2
--- /dev/null
+++ b/doc/html/classField__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Field" name="Field">
+<area shape="rect" id="node1" title=" " alt="" coords="69,80,121,107"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classField__inherit__graph.md5 b/doc/html/classField__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e0093ad528b8b1ec00f8bb5392ded3f57536e2c7
--- /dev/null
+++ b/doc/html/classField__inherit__graph.md5
@@ -0,0 +1 @@
+1f9141e3a21eca3bf2d742d5913e12a6
\ No newline at end of file
diff --git a/doc/html/classField__inherit__graph.png b/doc/html/classField__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..6aad30c4961ab882c5ddba1cfe077e9bd79a04c1
Binary files /dev/null and b/doc/html/classField__inherit__graph.png differ
diff --git a/doc/html/classField__rviz__decorator-members.html b/doc/html/classField__rviz__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..707445d76852430f91c425cc3ab5c55f7a16ddec
--- /dev/null
+++ b/doc/html/classField__rviz__decorator-members.html
@@ -0,0 +1,70 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Field_rviz_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator</a>(Abstract_robot_element *next, visualization_msgs::MarkerArray *markers)</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">input_filter</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>()</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a></td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">output_filter</a>() override</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">set_markers</a>(visualization_msgs::MarkerArray *markers)</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classField__rviz__decorator.html b/doc/html/classField__rviz__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..67bf0fa6a20e9fadc2e76fc14f2653254b72eb67
--- /dev/null
+++ b/doc/html/classField__rviz__decorator.html
@@ -0,0 +1,351 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Field_rviz_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pri-attribs">Private Attributes</a> &#124;
+<a href="classField__rviz__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Field_rviz_decorator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Field_rviz_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classField__rviz__decorator__inherit__graph.png" border="0" usemap="#Field__rviz__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Field__rviz__decorator_inherit__map" id="Field__rviz__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="19,169,171,196"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa88d9d5da860369d94420f6db716016c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>, visualization_msgs::MarkerArray *<a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>)</td></tr>
+<tr class="separator:aa88d9d5da860369d94420f6db716016c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b79225f014c0d1081080891d332187b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">input_filter</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a3b79225f014c0d1081080891d332187b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf6af7cbe66c0fc31443bbdba78005b3"><td class="memItemLeft" align="right" valign="top">visualization_msgs::MarkerArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a> ()</td></tr>
+<tr class="separator:abf6af7cbe66c0fc31443bbdba78005b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ea2d91d648a270d3a3a1853d14ccfe6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">output_filter</a> () override</td></tr>
+<tr class="separator:a9ea2d91d648a270d3a3a1853d14ccfe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16d7d4e68c53db336c4d2a9f032adff7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">set_markers</a> (visualization_msgs::MarkerArray *<a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>)</td></tr>
+<tr class="separator:a16d7d4e68c53db336c4d2a9f032adff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf15c56ecefe976950818f7418ad47d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:abf15c56ecefe976950818f7418ad47d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a> () override</td></tr>
+<tr class="separator:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a> ()=0</td></tr>
+<tr class="separator:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a> () override</td></tr>
+<tr class="separator:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a> ()</td></tr>
+<tr class="separator:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a> () override</td></tr>
+<tr class="separator:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> ()</td></tr>
+<tr class="separator:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a> () override</td></tr>
+<tr class="separator:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
+Private Attributes</h2></td></tr>
+<tr class="memitem:ad524be1ab9385b0f0e1a91c794ce2a94"><td class="memItemLeft" align="right" valign="top">visualization_msgs::MarkerArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a></td></tr>
+<tr class="separator:ad524be1ab9385b0f0e1a91c794ce2a94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td></tr>
+<tr class="separator:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td></tr>
+<tr class="separator:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td></tr>
+<tr class="separator:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8h_source.html#l00009">9</a> of file <a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aa88d9d5da860369d94420f6db716016c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa88d9d5da860369d94420f6db716016c">&#9670;&nbsp;</a></span>Field_rviz_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Field_rviz_decorator::Field_rviz_decorator </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td>
+          <td class="paramname"><em>next</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">visualization_msgs::MarkerArray *&#160;</td>
+          <td class="paramname"><em>markers</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8h_source.html#l00015">15</a> of file <a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a3b79225f014c0d1081080891d332187b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b79225f014c0d1081080891d332187b">&#9670;&nbsp;</a></span>input_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field_rviz_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8cpp_source.html#l00008">8</a> of file <a class="el" href="field__rviz__decorator_8cpp_source.html">field_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="abf6af7cbe66c0fc31443bbdba78005b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf6af7cbe66c0fc31443bbdba78005b3">&#9670;&nbsp;</a></span>markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::MarkerArray* Field_rviz_decorator::markers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8h_source.html#l00018">18</a> of file <a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9ea2d91d648a270d3a3a1853d14ccfe6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ea2d91d648a270d3a3a1853d14ccfe6">&#9670;&nbsp;</a></span>output_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field_rviz_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8cpp_source.html#l00010">10</a> of file <a class="el" href="field__rviz__decorator_8cpp_source.html">field_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a16d7d4e68c53db336c4d2a9f032adff7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16d7d4e68c53db336c4d2a9f032adff7">&#9670;&nbsp;</a></span>set_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field_rviz_decorator::set_markers </td>
+          <td>(</td>
+          <td class="paramtype">visualization_msgs::MarkerArray *&#160;</td>
+          <td class="paramname"><em>markers</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8h_source.html#l00017">17</a> of file <a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="abf15c56ecefe976950818f7418ad47d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf15c56ecefe976950818f7418ad47d4">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Field_rviz_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8cpp_source.html#l00003">3</a> of file <a class="el" href="field__rviz__decorator_8cpp_source.html">field_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ad524be1ab9385b0f0e1a91c794ce2a94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad524be1ab9385b0f0e1a91c794ce2a94">&#9670;&nbsp;</a></span>markers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::MarkerArray* Field_rviz_decorator::markers_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="field__rviz__decorator_8h_source.html#l00011">11</a> of file <a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="field__rviz__decorator_8h_source.html">field_rviz_decorator.h</a></li>
+<li><a class="el" href="field__rviz__decorator_8cpp_source.html">field_rviz_decorator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classField__rviz__decorator__inherit__graph.map b/doc/html/classField__rviz__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..77f8cbc3a6f06e3d6b919bd9b94f5e39e615cced
--- /dev/null
+++ b/doc/html/classField__rviz__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Field_rviz_decorator" name="Field_rviz_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="19,169,171,196"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classField__rviz__decorator__inherit__graph.md5 b/doc/html/classField__rviz__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f53aee263692a7c9e67d39500d4b4a6cef76e2d3
--- /dev/null
+++ b/doc/html/classField__rviz__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+41934e72c825a6a4675960dee8b044ef
\ No newline at end of file
diff --git a/doc/html/classField__rviz__decorator__inherit__graph.png b/doc/html/classField__rviz__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b91aba81e0394087d3522a7947e775f7dffe8e4
Binary files /dev/null and b/doc/html/classField__rviz__decorator__inherit__graph.png differ
diff --git a/doc/html/classJob__reader-members.html b/doc/html/classJob__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd922f538488ec2694ffa2a90b954abe7a05eb41
--- /dev/null
+++ b/doc/html/classJob__reader-members.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Job_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classJob__reader.html">Job_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a></td><td class="entry"><a class="el" href="classJob__reader.html">Job_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classJob__reader.html">Job_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">read</a>() override</td><td class="entry"><a class="el" href="classJob__reader.html">Job_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a>()</td><td class="entry"><a class="el" href="classJob__reader.html">Job_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">set_job_data</a>(boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt;&gt; &amp;robot_data)</td><td class="entry"><a class="el" href="classJob__reader.html">Job_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classJob__reader.html b/doc/html/classJob__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..7b468dad9958445867f71d8dd8526469b2e80513
--- /dev/null
+++ b/doc/html/classJob__reader.html
@@ -0,0 +1,258 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Job_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classJob__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Job_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Job reader.  
+ <a href="classJob__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="job__reader_8h_source.html">job_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Job_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classJob__reader__inherit__graph.png" border="0" usemap="#Job__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Job__reader_inherit__map" id="Job__reader_inherit__map">
+<area shape="rect" title="Job reader." alt="" coords="47,80,138,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a72439a3fe9612af7b44bbf2f5131481a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a72439a3fe9612af7b44bbf2f5131481a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Job reader constructor.  <a href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">More...</a><br /></td></tr>
+<tr class="separator:a72439a3fe9612af7b44bbf2f5131481a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a828c979dea61dfcf8214c30d11645b07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">read</a> () override</td></tr>
+<tr class="memdesc:a828c979dea61dfcf8214c30d11645b07"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementation  <a href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">More...</a><br /></td></tr>
+<tr class="separator:a828c979dea61dfcf8214c30d11645b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8d82c745bb59406821c91c3e09440b"><td class="memItemLeft" align="right" valign="top">boost::circular_buffer&lt; std::pair&lt; std::string, <a class="el" href="structjob__data.html">job_data</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a> ()</td></tr>
+<tr class="memdesc:a6d8d82c745bb59406821c91c3e09440b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Job_data.  <a href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">More...</a><br /></td></tr>
+<tr class="separator:a6d8d82c745bb59406821c91c3e09440b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0602b23e66eeea128251f411b0935f81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">set_job_data</a> (boost::circular_buffer&lt; std::pair&lt; std::string, <a class="el" href="structjob__data.html">job_data</a> &gt;&gt; &amp;<a class="el" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a>)</td></tr>
+<tr class="memdesc:a0602b23e66eeea128251f411b0935f81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Job_data.  <a href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">More...</a><br /></td></tr>
+<tr class="separator:a0602b23e66eeea128251f411b0935f81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ae7af6b2d3734d71bc2d15131733e9c1a"><td class="memItemLeft" align="right" valign="top">boost::circular_buffer&lt; std::pair&lt; std::string, <a class="el" href="structjob__data.html">job_data</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a></td></tr>
+<tr class="memdesc:ae7af6b2d3734d71bc2d15131733e9c1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">FIFO job information.  <a href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">More...</a><br /></td></tr>
+<tr class="separator:ae7af6b2d3734d71bc2d15131733e9c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Job reader. </p>
+<p>Reader which returns job data liked to robot </p>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8h_source.html#l00016">16</a> of file <a class="el" href="job__reader_8h_source.html">job_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a72439a3fe9612af7b44bbf2f5131481a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72439a3fe9612af7b44bbf2f5131481a">&#9670;&nbsp;</a></span>Job_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Job_reader::Job_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Job reader constructor. </p>
+<p>Calls <a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07" title="read implementation">read()</a> implementation </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS Nodehandle <br  />
+ </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8h_source.html#l00026">26</a> of file <a class="el" href="job__reader_8h_source.html">job_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a828c979dea61dfcf8214c30d11645b07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a828c979dea61dfcf8214c30d11645b07">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Job_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementation </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8cpp_source.html#l00005">5</a> of file <a class="el" href="job__reader_8cpp_source.html">job_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6d8d82c745bb59406821c91c3e09440b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d8d82c745bb59406821c91c3e09440b">&#9670;&nbsp;</a></span>robot_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">boost::circular_buffer&lt;std::pair&lt;std::string, <a class="el" href="structjob__data.html">job_data</a>&gt; &gt;&amp; Job_reader::robot_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get Job_data. </p>
+<dl class="section return"><dt>Returns</dt><dd>FIFO job information <br  />
+ </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8h_source.html#l00041">41</a> of file <a class="el" href="job__reader_8h_source.html">job_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a0602b23e66eeea128251f411b0935f81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0602b23e66eeea128251f411b0935f81">&#9670;&nbsp;</a></span>set_job_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Job_reader::set_job_data </td>
+          <td>(</td>
+          <td class="paramtype">boost::circular_buffer&lt; std::pair&lt; std::string, <a class="el" href="structjob__data.html">job_data</a> &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>robot_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set Job_data. </p>
+<p>Calls pure virtual <a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07" title="read implementation">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot_data</td><td>FIFO job information <br  />
+ </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8h_source.html#l00035">35</a> of file <a class="el" href="job__reader_8h_source.html">job_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ae7af6b2d3734d71bc2d15131733e9c1a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7af6b2d3734d71bc2d15131733e9c1a">&#9670;&nbsp;</a></span>job_data_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">boost::circular_buffer&lt;std::pair&lt;std::string, <a class="el" href="structjob__data.html">job_data</a>&gt; &gt; Job_reader::job_data_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>FIFO job information. </p>
+
+<p class="definition">Definition at line <a class="el" href="job__reader_8h_source.html#l00018">18</a> of file <a class="el" href="job__reader_8h_source.html">job_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="job__reader_8h_source.html">job_reader.h</a></li>
+<li><a class="el" href="job__reader_8cpp_source.html">job_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classJob__reader__inherit__graph.map b/doc/html/classJob__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..7302b0f26a1817f1c6e8ebfd1cb84344da2002e4
--- /dev/null
+++ b/doc/html/classJob__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Job_reader" name="Job_reader">
+<area shape="rect" id="node1" title="Job reader." alt="" coords="47,80,138,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classJob__reader__inherit__graph.md5 b/doc/html/classJob__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9d023e33424bf48ca615e56dd7ec716b43dbefef
--- /dev/null
+++ b/doc/html/classJob__reader__inherit__graph.md5
@@ -0,0 +1 @@
+ee77437e3d49947a07cde62218d07ad8
\ No newline at end of file
diff --git a/doc/html/classJob__reader__inherit__graph.png b/doc/html/classJob__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..cc91cbb5cdba2ce1a47715e9c4651a4a71b7e878
Binary files /dev/null and b/doc/html/classJob__reader__inherit__graph.png differ
diff --git a/doc/html/classLog__decorator-members.html b/doc/html/classLog__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa932eb1f0722435bedd8572cfa5e78becf63b7c
--- /dev/null
+++ b/doc/html/classLog__decorator-members.html
@@ -0,0 +1,67 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Log_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classLog__decorator.html">Log_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">input_filter</a>() override</td><td class="entry"><a class="el" href="classLog__decorator.html">Log_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator::input_filter</a>(tf2::Transform &amp;tf)=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classLog__decorator.html">Log_decorator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">output_filter</a>() override</td><td class="entry"><a class="el" href="classLog__decorator.html">Log_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classLog__decorator.html">Log_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classLog__decorator.html b/doc/html/classLog__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..cbcc69a224c475a1802e8e1a388e55c5cc7d8c7d
--- /dev/null
+++ b/doc/html/classLog__decorator.html
@@ -0,0 +1,240 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Log_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classLog__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Log_decorator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="log__decorator_8h_source.html">log_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Log_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classLog__decorator__inherit__graph.png" border="0" usemap="#Log__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Log__decorator_inherit__map" id="Log__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="37,169,152,196"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac31262be083a8b9f2105b7f0211db7d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">input_filter</a> () override</td></tr>
+<tr class="separator:ac31262be083a8b9f2105b7f0211db7d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abac3ce8b5ef982e3a030a152cfcc2290"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:abac3ce8b5ef982e3a030a152cfcc2290"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c3305b339a0e539d60bd92d59f5c835"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">output_filter</a> () override</td></tr>
+<tr class="separator:a7c3305b339a0e539d60bd92d59f5c835"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fdbd079b56b93f87a9b325397d9d57a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a9fdbd079b56b93f87a9b325397d9d57a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a> () override</td></tr>
+<tr class="separator:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa43d886a91e05c76c2cad7695d1662ff inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">input_filter</a> (tf2::Transform &amp;tf)=0</td></tr>
+<tr class="separator:aa43d886a91e05c76c2cad7695d1662ff inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a> () override</td></tr>
+<tr class="separator:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a> ()</td></tr>
+<tr class="separator:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a> () override</td></tr>
+<tr class="separator:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> ()</td></tr>
+<tr class="separator:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a> () override</td></tr>
+<tr class="separator:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td></tr>
+<tr class="separator:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td></tr>
+<tr class="separator:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td></tr>
+<tr class="separator:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="log__decorator_8h_source.html#l00008">8</a> of file <a class="el" href="log__decorator_8h_source.html">log_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="abac3ce8b5ef982e3a030a152cfcc2290"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abac3ce8b5ef982e3a030a152cfcc2290">&#9670;&nbsp;</a></span>Log_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Log_decorator::Log_decorator </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="log__decorator_8cpp_source.html#l00003">3</a> of file <a class="el" href="log__decorator_8cpp_source.html">log_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac31262be083a8b9f2105b7f0211db7d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac31262be083a8b9f2105b7f0211db7d6">&#9670;&nbsp;</a></span>input_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Log_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="log__decorator_8cpp_source.html#l00009">9</a> of file <a class="el" href="log__decorator_8cpp_source.html">log_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a7c3305b339a0e539d60bd92d59f5c835"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c3305b339a0e539d60bd92d59f5c835">&#9670;&nbsp;</a></span>output_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Log_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="log__decorator_8cpp_source.html#l00021">21</a> of file <a class="el" href="log__decorator_8cpp_source.html">log_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9fdbd079b56b93f87a9b325397d9d57a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fdbd079b56b93f87a9b325397d9d57a">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Log_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="log__decorator_8cpp_source.html#l00015">15</a> of file <a class="el" href="log__decorator_8cpp_source.html">log_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="log__decorator_8h_source.html">log_decorator.h</a></li>
+<li><a class="el" href="log__decorator_8cpp_source.html">log_decorator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classLog__decorator__inherit__graph.map b/doc/html/classLog__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..0d797cde4cff4b405e0e28dd3e7e34eaf17dbf30
--- /dev/null
+++ b/doc/html/classLog__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Log_decorator" name="Log_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="37,169,152,196"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classLog__decorator__inherit__graph.md5 b/doc/html/classLog__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..3087a9ffd46328b04dc6a6ac23d92a1f3686f299
--- /dev/null
+++ b/doc/html/classLog__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+15bb5028eb2055e02098d5d4be8c860b
\ No newline at end of file
diff --git a/doc/html/classLog__decorator__inherit__graph.png b/doc/html/classLog__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..1ccd9940aefba3dee2483588b4042001ae6f8569
Binary files /dev/null and b/doc/html/classLog__decorator__inherit__graph.png differ
diff --git a/doc/html/classMap__loader-members.html b/doc/html/classMap__loader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb39380836b84b0b7f095d810f7502278a3b6d0b
--- /dev/null
+++ b/doc/html/classMap__loader-members.html
@@ -0,0 +1,60 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Map_loader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMap__loader.html">Map_loader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a>()=default</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">base_calculation</a>() override</td><td class="entry"><a class="el" href="classMap__loader.html">Map_loader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader</a>(XmlRpc::XmlRpcValue &amp;map_data, XmlRpc::XmlRpcValue &amp;target_data)</td><td class="entry"><a class="el" href="classMap__loader.html">Map_loader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a>(Abstract_strategy *some_stratergy)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a>(std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">set_target_rot</a>(std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;rots)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">strategy</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">target_cloud</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>()</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a></td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">write_task</a>(Abstract_robot *robot) override</td><td class="entry"><a class="el" href="classMap__loader.html">Map_loader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">~Abstract_map_loader</a>()=default</td><td class="entry"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMap__loader.html b/doc/html/classMap__loader.html
new file mode 100644
index 0000000000000000000000000000000000000000..589bdb028e9a4508c389fc8647047ee4828509e0
--- /dev/null
+++ b/doc/html/classMap__loader.html
@@ -0,0 +1,203 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Map_loader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classMap__loader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Map_loader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="map__loader_8h_source.html">map_loader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Map_loader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMap__loader__inherit__graph.png" border="0" usemap="#Map__loader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Map__loader_inherit__map" id="Map__loader_inherit__map">
+<area shape="rect" title=" " alt="" coords="36,80,135,107"/>
+<area shape="rect" href="classAbstract__map__loader.html" title=" " alt="" coords="5,5,165,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac8f429fe039a03dd69505fe899f37310"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">base_calculation</a> () override</td></tr>
+<tr class="separator:ac8f429fe039a03dd69505fe899f37310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40cb9325cf9975bd8204abfbd7c599b8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader</a> (XmlRpc::XmlRpcValue &amp;map_data, XmlRpc::XmlRpcValue &amp;target_data)</td></tr>
+<tr class="separator:a40cb9325cf9975bd8204abfbd7c599b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1fc661c7d1d19a0c1e408a89d31d69b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">write_task</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="separator:aa1fc661c7d1d19a0c1e408a89d31d69b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__map__loader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__map__loader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td></tr>
+<tr class="memitem:a408d265bc42bdbb25b2db44b9533e668 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a> ()=default</td></tr>
+<tr class="separator:a408d265bc42bdbb25b2db44b9533e668 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4f75fbdda254f2a506770969cc46d8e inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">inv_map</a> ()</td></tr>
+<tr class="separator:af4f75fbdda254f2a506770969cc46d8e inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13fb2cd6ac1a353192161e053426d7c8 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a> ()</td></tr>
+<tr class="separator:a13fb2cd6ac1a353192161e053426d7c8 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a297e8f8fa66f70678d19d321033eea4d inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">set_inv_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="separator:a297e8f8fa66f70678d19d321033eea4d inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1edc00738184b6aa4b245727c8ed52ec inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="separator:a1edc00738184b6aa4b245727c8ed52ec inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3508478d51dcdf86ed8418006a4dd0d9 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">set_strategy</a> (<a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *some_stratergy)</td></tr>
+<tr class="separator:a3508478d51dcdf86ed8418006a4dd0d9 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2945aff76228233abb3a89477c013d8a inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">set_target_cloud</a> (std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td></tr>
+<tr class="separator:a2945aff76228233abb3a89477c013d8a inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2adcb4394435282441360fb2310c231b inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">set_target_rot</a> (std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt;&gt;&gt; &amp;rots)</td></tr>
+<tr class="separator:a2adcb4394435282441360fb2310c231b inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab738d6d84071f7b931e2373a7fefc498 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</td></tr>
+<tr class="separator:ab738d6d84071f7b931e2373a7fefc498 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd6b5c362ad38cfe32600ff9f1398bc7 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">strategy</a> ()</td></tr>
+<tr class="separator:afd6b5c362ad38cfe32600ff9f1398bc7 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb73acebcfbfb3a5acb790eb2d96fbd6 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">target_cloud</a> ()</td></tr>
+<tr class="separator:abb73acebcfbfb3a5acb790eb2d96fbd6 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdd0484ea0507910d37b0eae257b6476 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">target_rot</a> ()</td></tr>
+<tr class="separator:abdd0484ea0507910d37b0eae257b6476 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9772fe2bd594967b8f7b980db442ca5 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a> ()</td></tr>
+<tr class="separator:aa9772fe2bd594967b8f7b980db442ca5 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b3675673d54d23b1678bd47df4b2273 inherit pub_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">~Abstract_map_loader</a> ()=default</td></tr>
+<tr class="separator:a3b3675673d54d23b1678bd47df4b2273 inherit pub_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_static_methods_classAbstract__map__loader"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classAbstract__map__loader')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td></tr>
+<tr class="memitem:a797587fa281f28fde814a052396d90bf inherit pub_static_methods_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a> ()</td></tr>
+<tr class="separator:a797587fa281f28fde814a052396d90bf inherit pub_static_methods_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__map__loader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__map__loader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a></td></tr>
+<tr class="memitem:ad43b3e44a4908e0352c3a7c7b26c8347 inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">inv_map_</a></td></tr>
+<tr class="separator:ad43b3e44a4908e0352c3a7c7b26c8347 inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a460481a298b27e411bafcdc584f1f35a inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">map_</a></td></tr>
+<tr class="separator:a460481a298b27e411bafcdc584f1f35a inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18cb3dcb65ee0af86bff355c24814dc3 inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a></td></tr>
+<tr class="separator:a18cb3dcb65ee0af86bff355c24814dc3 inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab0898959888bc50f37690808f9571a8 inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a></td></tr>
+<tr class="separator:aab0898959888bc50f37690808f9571a8 inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af012c7a4a222097864cbcda7ed58212f inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a></td></tr>
+<tr class="separator:af012c7a4a222097864cbcda7ed58212f inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c4bd31f9c778a3a5ef7a21ab16f6127 inherit pro_attribs_classAbstract__map__loader"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a></td></tr>
+<tr class="separator:a8c4bd31f9c778a3a5ef7a21ab16f6127 inherit pro_attribs_classAbstract__map__loader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="map__loader_8h_source.html#l00010">10</a> of file <a class="el" href="map__loader_8h_source.html">map_loader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a40cb9325cf9975bd8204abfbd7c599b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40cb9325cf9975bd8204abfbd7c599b8">&#9670;&nbsp;</a></span>Map_loader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Map_loader::Map_loader </td>
+          <td>(</td>
+          <td class="paramtype">XmlRpc::XmlRpcValue &amp;&#160;</td>
+          <td class="paramname"><em>map_data</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">XmlRpc::XmlRpcValue &amp;&#160;</td>
+          <td class="paramname"><em>target_data</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="map__loader_8cpp_source.html#l00005">5</a> of file <a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac8f429fe039a03dd69505fe899f37310"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8f429fe039a03dd69505fe899f37310">&#9670;&nbsp;</a></span>base_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; Map_loader::base_calculation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">Abstract_map_loader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="map__loader_8cpp_source.html#l00039">39</a> of file <a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa1fc661c7d1d19a0c1e408a89d31d69b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1fc661c7d1d19a0c1e408a89d31d69b">&#9670;&nbsp;</a></span>write_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Map_loader::write_task </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">Abstract_map_loader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="map__loader_8cpp_source.html#l00140">140</a> of file <a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="map__loader_8h_source.html">map_loader.h</a></li>
+<li><a class="el" href="map__loader_8cpp_source.html">map_loader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMap__loader__inherit__graph.map b/doc/html/classMap__loader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..55e9ca9868f2a022af3f754576ee7a75656293d7
--- /dev/null
+++ b/doc/html/classMap__loader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Map_loader" name="Map_loader">
+<area shape="rect" id="node1" title=" " alt="" coords="36,80,135,107"/>
+<area shape="rect" id="node2" href="$classAbstract__map__loader.html" title=" " alt="" coords="5,5,165,32"/>
+</map>
diff --git a/doc/html/classMap__loader__inherit__graph.md5 b/doc/html/classMap__loader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8a2e0c66ed96ed5c52b21117ed210c4939ea83ac
--- /dev/null
+++ b/doc/html/classMap__loader__inherit__graph.md5
@@ -0,0 +1 @@
+4afa3afa033ce58acf1a15a5378413ac
\ No newline at end of file
diff --git a/doc/html/classMap__loader__inherit__graph.png b/doc/html/classMap__loader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..44f8dcb7ce4518b5c15a2379fb8290c6f1f44775
Binary files /dev/null and b/doc/html/classMap__loader__inherit__graph.png differ
diff --git a/doc/html/classMap__reader-members.html b/doc/html/classMap__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d463c0ecf9a30de169ac775b8e926f632c22155
--- /dev/null
+++ b/doc/html/classMap__reader-members.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Map_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMap__reader.html">Map_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a>()</td><td class="entry"><a class="el" href="classMap__reader.html">Map_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">map_data_</a></td><td class="entry"><a class="el" href="classMap__reader.html">Map_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classMap__reader.html">Map_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">read</a>() override</td><td class="entry"><a class="el" href="classMap__reader.html">Map_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">set_map_data</a>(std::vector&lt; tf2::Transform &gt; &amp;robot_data)</td><td class="entry"><a class="el" href="classMap__reader.html">Map_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMap__reader.html b/doc/html/classMap__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..c4d0d0bb34ad6956f721a0f24ba43e1a1b722d96
--- /dev/null
+++ b/doc/html/classMap__reader.html
@@ -0,0 +1,255 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Map_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classMap__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Map_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Map reader.  
+ <a href="classMap__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="map__reader_8h_source.html">map_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Map_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMap__reader__inherit__graph.png" border="0" usemap="#Map__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Map__reader_inherit__map" id="Map__reader_inherit__map">
+<area shape="rect" title="Map reader." alt="" coords="43,80,142,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a31bfd513f89c1b196f2616df5e64611c"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a> ()</td></tr>
+<tr class="memdesc:a31bfd513f89c1b196f2616df5e64611c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get map_data.  <a href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">More...</a><br /></td></tr>
+<tr class="separator:a31bfd513f89c1b196f2616df5e64611c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a651a31b2d8120523590a7d9707d5b4b5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a651a31b2d8120523590a7d9707d5b4b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map reader constructor.  <a href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">More...</a><br /></td></tr>
+<tr class="separator:a651a31b2d8120523590a7d9707d5b4b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91deab19bee09cfa5174fdb159972fe3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">read</a> () override</td></tr>
+<tr class="memdesc:a91deab19bee09cfa5174fdb159972fe3"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">More...</a><br /></td></tr>
+<tr class="separator:a91deab19bee09cfa5174fdb159972fe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f6a52aa711ebdeb6bc8714b18679af6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">set_map_data</a> (std::vector&lt; tf2::Transform &gt; &amp;robot_data)</td></tr>
+<tr class="memdesc:a6f6a52aa711ebdeb6bc8714b18679af6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set map_data.  <a href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">More...</a><br /></td></tr>
+<tr class="separator:a6f6a52aa711ebdeb6bc8714b18679af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:abfb159fe634aab941d493204be389fa9"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">map_data_</a></td></tr>
+<tr class="memdesc:abfb159fe634aab941d493204be389fa9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map transforms.  <a href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">More...</a><br /></td></tr>
+<tr class="separator:abfb159fe634aab941d493204be389fa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Map reader. </p>
+<p>Reads Reachabilty Map vector </p>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8h_source.html#l00015">15</a> of file <a class="el" href="map__reader_8h_source.html">map_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a651a31b2d8120523590a7d9707d5b4b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a651a31b2d8120523590a7d9707d5b4b5">&#9670;&nbsp;</a></span>Map_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Map_reader::Map_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Map reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>Ros Nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8h_source.html#l00025">25</a> of file <a class="el" href="map__reader_8h_source.html">map_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a31bfd513f89c1b196f2616df5e64611c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31bfd513f89c1b196f2616df5e64611c">&#9670;&nbsp;</a></span>map_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Map_reader::map_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get map_data. </p>
+<dl class="section return"><dt>Returns</dt><dd>vector of transforms </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8h_source.html#l00037">37</a> of file <a class="el" href="map__reader_8h_source.html">map_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a91deab19bee09cfa5174fdb159972fe3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91deab19bee09cfa5174fdb159972fe3">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Map_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="map__reader_8cpp_source.html">map_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6f6a52aa711ebdeb6bc8714b18679af6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f6a52aa711ebdeb6bc8714b18679af6">&#9670;&nbsp;</a></span>set_map_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Map_reader::set_map_data </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>robot_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set map_data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot_data</td><td>vector of transforms </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8h_source.html#l00031">31</a> of file <a class="el" href="map__reader_8h_source.html">map_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="abfb159fe634aab941d493204be389fa9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfb159fe634aab941d493204be389fa9">&#9670;&nbsp;</a></span>map_data_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Map_reader::map_data_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Map transforms. </p>
+
+<p class="definition">Definition at line <a class="el" href="map__reader_8h_source.html#l00017">17</a> of file <a class="el" href="map__reader_8h_source.html">map_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="map__reader_8h_source.html">map_reader.h</a></li>
+<li><a class="el" href="map__reader_8cpp_source.html">map_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMap__reader__inherit__graph.map b/doc/html/classMap__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..18b969a162598e901be81c6e6320db6bae478722
--- /dev/null
+++ b/doc/html/classMap__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Map_reader" name="Map_reader">
+<area shape="rect" id="node1" title="Map reader." alt="" coords="43,80,142,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classMap__reader__inherit__graph.md5 b/doc/html/classMap__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..de681c9992ca83f4b3cb2bffa1d1f27baf908ec9
--- /dev/null
+++ b/doc/html/classMap__reader__inherit__graph.md5
@@ -0,0 +1 @@
+4c38d4855923ee13c0f8e51584f9a432
\ No newline at end of file
diff --git a/doc/html/classMap__reader__inherit__graph.png b/doc/html/classMap__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..2f485cc42f318c70576f9b91848a2951f210615c
Binary files /dev/null and b/doc/html/classMap__reader__inherit__graph.png differ
diff --git a/doc/html/classMediator-members.html b/doc/html/classMediator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..063cf1cbda46a5afe95cb0b2241e5d3445f361c3
--- /dev/null
+++ b/doc/html/classMediator-members.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Mediator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMediator.html">Mediator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">approximation</a>(Robot *robot)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">calculate</a>(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">check_collision</a>(const int &amp;robot) override</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">connect_robots</a>(Abstract_robot *robot) override</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">Abstract_mediator::connect_robots</a>(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">generate_Ground</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">mediate</a>() override</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">publish</a>(Robot *r)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">set_wings</a>(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">setup_rviz</a>()</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMediator.html#accf269f067ad74db3e291289a96a71cc">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">write_file</a>(Robot *A, Robot *B)</td><td class="entry"><a class="el" href="classMediator.html">Mediator</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMediator.html b/doc/html/classMediator.html
new file mode 100644
index 0000000000000000000000000000000000000000..2f5b58a513ab9636e1e9f8f4f413b8c423c0f513
--- /dev/null
+++ b/doc/html/classMediator.html
@@ -0,0 +1,524 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Mediator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classMediator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Mediator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="mediator_8h_source.html">mediator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMediator__inherit__graph.png" border="0" usemap="#Mediator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Mediator_inherit__map" id="Mediator_inherit__map">
+<area shape="rect" title=" " alt="" coords="37,80,117,107"/>
+<area shape="rect" href="classAbstract__mediator.html" title="Abstract mediator." alt="" coords="5,5,148,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a337eff9aa7e40e41f724e5b2e6c7f2b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">approximation</a> (<a class="el" href="classRobot.html">Robot</a> *robot)</td></tr>
+<tr class="separator:a337eff9aa7e40e41f724e5b2e6c7f2b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bc333451fdba008fa7eb985dfa824ab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">build_wings</a> (std::bitset&lt; 3 &gt; &amp;<a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>, int &amp;robot) override</td></tr>
+<tr class="separator:a1bc333451fdba008fa7eb985dfa824ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04f3617b928e20bdd364244420a014ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">calculate</a> (std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</td></tr>
+<tr class="separator:a04f3617b928e20bdd364244420a014ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a754b1266d12b93c214e4ca9f2bffde27"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">check_collision</a> (const int &amp;robot) override</td></tr>
+<tr class="separator:a754b1266d12b93c214e4ca9f2bffde27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a362636b4a9f1018308c4843cb91c1f18"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="separator:a362636b4a9f1018308c4843cb91c1f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fe305318a23ed8967b76f897dfb6659"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a5fe305318a23ed8967b76f897dfb6659"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a102d4e690501ce83fd6789309326fc95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">mediate</a> () override</td></tr>
+<tr class="separator:a102d4e690501ce83fd6789309326fc95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb53c3e593afd4bb9f79990c3398ff36"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:aeb53c3e593afd4bb9f79990c3398ff36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad12e69c15639193aeff3ac95263d7774"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">publish</a> (<a class="el" href="classRobot.html">Robot</a> *r)</td></tr>
+<tr class="separator:ad12e69c15639193aeff3ac95263d7774"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa16035737db08e657c36a5d69374a67f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">set_wings</a> (std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;wbp) override</td></tr>
+<tr class="separator:aa16035737db08e657c36a5d69374a67f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47c455b2e15e19e16565d9267528ff6e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">setup_rviz</a> ()</td></tr>
+<tr class="separator:a47c455b2e15e19e16565d9267528ff6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accf269f067ad74db3e291289a96a71cc"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#accf269f067ad74db3e291289a96a71cc">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:accf269f067ad74db3e291289a96a71cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd53d6e32bb1e65cb2f0197acdd101cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">write_file</a> (<a class="el" href="classRobot.html">Robot</a> *A, <a class="el" href="classRobot.html">Robot</a> *B)</td></tr>
+<tr class="separator:acd53d6e32bb1e65cb2f0197acdd101cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator constructor.  <a href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">More...</a><br /></td></tr>
+<tr class="separator:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">connect_robots</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; robot)=0</td></tr>
+<tr class="memdesc:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual robot connecting methode  <a href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">More...</a><br /></td></tr>
+<tr class="separator:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="memdesc:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dirname.  <a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">More...</a><br /></td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a> ()</td></tr>
+<tr class="separator:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a> ()</td></tr>
+<tr class="memdesc:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get result_vector.  <a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">More...</a><br /></td></tr>
+<tr class="separator:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a> ()</td></tr>
+<tr class="separator:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a> ()</td></tr>
+<tr class="memdesc:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robots.  <a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">More...</a><br /></td></tr>
+<tr class="separator:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="memdesc:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set dirname.  <a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">More...</a><br /></td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="memdesc:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set result vector.  <a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">More...</a><br /></td></tr>
+<tr class="separator:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a> (std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="separator:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="memdesc:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloud converter.  <a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">More...</a><br /></td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a> ()</td></tr>
+<tr class="separator:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a> ()</td></tr>
+<tr class="memdesc:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wings.  <a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">More...</a><br /></td></tr>
+<tr class="separator:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td></tr>
+<tr class="memdesc:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirname of the reference protobuff.  <a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">More...</a><br /></td></tr>
+<tr class="separator:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td></tr>
+<tr class="memdesc:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">More...</a><br /></td></tr>
+<tr class="separator:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td></tr>
+<tr class="separator:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">ros::Publisher *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td></tr>
+<tr class="separator:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td></tr>
+<tr class="memdesc:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">total bound a workspace  <a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">More...</a><br /></td></tr>
+<tr class="separator:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td></tr>
+<tr class="separator:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td></tr>
+<tr class="memdesc:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result_vector of base positions linked to robot.  <a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">More...</a><br /></td></tr>
+<tr class="separator:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td></tr>
+<tr class="separator:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td></tr>
+<tr class="memdesc:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Robots agents.  <a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">More...</a><br /></td></tr>
+<tr class="separator:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td></tr>
+<tr class="memdesc:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task_space reader which provides drop off positions.  <a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">More...</a><br /></td></tr>
+<tr class="separator:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td></tr>
+<tr class="separator:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td></tr>
+<tr class="separator:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="mediator_8h_source.html#l00012">12</a> of file <a class="el" href="mediator_8h_source.html">mediator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aeb53c3e593afd4bb9f79990c3398ff36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb53c3e593afd4bb9f79990c3398ff36">&#9670;&nbsp;</a></span>Mediator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Mediator::Mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt;&#160;</td>
+          <td class="paramname"><em>objects</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">ros::Publisher *&#160;</td>
+          <td class="paramname"><em>pub</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8h_source.html#l00014">14</a> of file <a class="el" href="mediator_8h_source.html">mediator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a337eff9aa7e40e41f724e5b2e6c7f2b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a337eff9aa7e40e41f724e5b2e6c7f2b9">&#9670;&nbsp;</a></span>approximation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::approximation </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classRobot.html">Robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00222">222</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1bc333451fdba008fa7eb985dfa824ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1bc333451fdba008fa7eb985dfa824ab">&#9670;&nbsp;</a></span>build_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::build_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::bitset&lt; 3 &gt; &amp;&#160;</td>
+          <td class="paramname"><em>wings</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00429">429</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a04f3617b928e20bdd364244420a014ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04f3617b928e20bdd364244420a014ae">&#9670;&nbsp;</a></span>calculate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::calculate </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>ground_per_robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00144">144</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a754b1266d12b93c214e4ca9f2bffde27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a754b1266d12b93c214e4ca9f2bffde27">&#9670;&nbsp;</a></span>check_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Mediator::check_collision </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00055">55</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a362636b4a9f1018308c4843cb91c1f18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a362636b4a9f1018308c4843cb91c1f18">&#9670;&nbsp;</a></span>connect_robots()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00006">6</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5fe305318a23ed8967b76f897dfb6659"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fe305318a23ed8967b76f897dfb6659">&#9670;&nbsp;</a></span>generate_Ground()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;pcl::PointXYZ&gt; Mediator::generate_Ground </td>
+          <td>(</td>
+          <td class="paramtype">const tf2::Vector3&#160;</td>
+          <td class="paramname"><em>origin</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const float&#160;</td>
+          <td class="paramname"><em>diameter</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">float&#160;</td>
+          <td class="paramname"><em>resolution</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a102d4e690501ce83fd6789309326fc95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a102d4e690501ce83fd6789309326fc95">&#9670;&nbsp;</a></span>mediate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00105">105</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad12e69c15639193aeff3ac95263d7774"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad12e69c15639193aeff3ac95263d7774">&#9670;&nbsp;</a></span>publish()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::publish </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classRobot.html">Robot</a> *&#160;</td>
+          <td class="paramname"><em>r</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00448">448</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa16035737db08e657c36a5d69374a67f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa16035737db08e657c36a5d69374a67f">&#9670;&nbsp;</a></span>set_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::set_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>wbp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00042">42</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a47c455b2e15e19e16565d9267528ff6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a47c455b2e15e19e16565d9267528ff6e">&#9670;&nbsp;</a></span>setup_rviz()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::setup_rviz </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00008">8</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="accf269f067ad74db3e291289a96a71cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accf269f067ad74db3e291289a96a71cc">&#9670;&nbsp;</a></span>vector_to_cloud()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr Mediator::vector_to_cloud </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; pcl::PointXYZ &gt; &amp;&#160;</td>
+          <td class="paramname"><em>vector</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="acd53d6e32bb1e65cb2f0197acdd101cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd53d6e32bb1e65cb2f0197acdd101cd">&#9670;&nbsp;</a></span>write_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Mediator::write_file </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classRobot.html">Robot</a> *&#160;</td>
+          <td class="paramname"><em>A</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classRobot.html">Robot</a> *&#160;</td>
+          <td class="paramname"><em>B</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mediator_8cpp_source.html#l00303">303</a> of file <a class="el" href="mediator_8cpp_source.html">mediator.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="mediator_8h_source.html">mediator.h</a></li>
+<li><a class="el" href="mediator_8cpp_source.html">mediator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMediator__inherit__graph.map b/doc/html/classMediator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..216a2d6dbc24d91319abfb0df9a1402bcdd28668
--- /dev/null
+++ b/doc/html/classMediator__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Mediator" name="Mediator">
+<area shape="rect" id="node1" title=" " alt="" coords="37,80,117,107"/>
+<area shape="rect" id="node2" href="$classAbstract__mediator.html" title="Abstract mediator." alt="" coords="5,5,148,32"/>
+</map>
diff --git a/doc/html/classMediator__inherit__graph.md5 b/doc/html/classMediator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..decf4ea8274ca6a1398a8fc49c3eccdfabdf489f
--- /dev/null
+++ b/doc/html/classMediator__inherit__graph.md5
@@ -0,0 +1 @@
+5cd602477acf7efaa477069abd50e0b9
\ No newline at end of file
diff --git a/doc/html/classMediator__inherit__graph.png b/doc/html/classMediator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6ca1c7ce967d35fc3d37a4abaaf97c8d11effcc
Binary files /dev/null and b/doc/html/classMediator__inherit__graph.png differ
diff --git a/doc/html/classMoveit__grasp__mediator-members.html b/doc/html/classMoveit__grasp__mediator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..684d1d1fd29cc20d78f562c508109eb30b3241e3
--- /dev/null
+++ b/doc/html/classMoveit__grasp__mediator-members.html
@@ -0,0 +1,115 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Moveit_grasp_mediator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">check_collision</a>(const int &amp;robot) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">connect_robots</a>(Abstract_robot *robot) override</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">Abstract_mediator::connect_robots</a>(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a>(Moveit_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">generateRandomCuboid</a>(std::string &amp;object_name, geometry_msgs::Pose &amp;object_pose, double &amp;x_depth, double &amp;y_width, double &amp;z_height)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">getIKSolution</a>(const moveit::core::JointModelGroup *arm_jmg, const Eigen::Isometry3d &amp;target_pose, robot_state::RobotState &amp;solution, const std::string &amp;link_name)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">isStateValid</a>(const planning_scene::PlanningScene *planning_scene, const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, robot_state::RobotState *robot_state, const robot_model::JointModelGroup *group, const double *ik_solution)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">job_reader_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">manipulate_grasp_data</a>(Moveit_robot *robot)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">manipulate_mapspace</a>(tf2::Transform &amp;tf, tf2::Vector3 &amp;size)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">mediate</a>() override</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a>(moveit_msgs::PlanningScene &amp;in)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a>(moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, Moveit_robot *mr)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">parallel_exec</a>(Moveit_robot &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">planFullGrasp</a>(std::vector&lt; moveit_grasps::GraspCandidatePtr &gt; &amp;grasp_candidates, moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan, const std::string &amp;object_name)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">planning_pipeline_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">planPreApproach</a>(const robot_state::RobotState &amp;goal_state, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">rewrite_task_template</a>(Abstract_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">robot_reader_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">scene_setup</a>()</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">set_tasks</a>(std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;tasks)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">set_wings</a>(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">task_map</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">visualizePick</a>(const moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, const moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">voxel_environment_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">waitForNextStep</a>(const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, const std::string &amp;prompt)</td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">wing_reader_</a></td><td class="entry"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__grasp__mediator.html b/doc/html/classMoveit__grasp__mediator.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e57eb3cd9afed5f06d593ac17afab73926013c9
--- /dev/null
+++ b/doc/html/classMoveit__grasp__mediator.html
@@ -0,0 +1,903 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Moveit_grasp_mediator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classMoveit__grasp__mediator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Moveit_grasp_mediator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Moveit_grasp_mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMoveit__grasp__mediator__inherit__graph.png" border="0" usemap="#Moveit__grasp__mediator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Moveit__grasp__mediator_inherit__map" id="Moveit__grasp__mediator_inherit__map">
+<area shape="rect" title=" " alt="" coords="5,155,181,181"/>
+<area shape="rect" href="classMoveit__mediator.html" title=" " alt="" coords="27,80,160,107"/>
+<area shape="rect" href="classAbstract__mediator.html" title="Abstract mediator." alt="" coords="22,5,165,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa9b3d92f1177b7ed103400bd5e1aa558"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="separator:aa9b3d92f1177b7ed103400bd5e1aa558"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c5f2ad1dedf0b71711725e2d96c3b2d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">generateRandomCuboid</a> (std::string &amp;object_name, geometry_msgs::Pose &amp;object_pose, double &amp;x_depth, double &amp;y_width, double &amp;z_height)</td></tr>
+<tr class="separator:a1c5f2ad1dedf0b71711725e2d96c3b2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa469150a38fcf4e8a3d9acde59e4b519"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">getIKSolution</a> (const moveit::core::JointModelGroup *arm_jmg, const Eigen::Isometry3d &amp;target_pose, robot_state::RobotState &amp;solution, const std::string &amp;link_name)</td></tr>
+<tr class="separator:aa469150a38fcf4e8a3d9acde59e4b519"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97f68aabffc7f663ab03927084044311"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">isStateValid</a> (const planning_scene::PlanningScene *planning_scene, const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, robot_state::RobotState *robot_state, const robot_model::JointModelGroup *group, const double *ik_solution)</td></tr>
+<tr class="separator:a97f68aabffc7f663ab03927084044311"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa285fd973936b65c68cfb19c054edfb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">manipulate_grasp_data</a> (<a class="el" href="classMoveit__robot.html">Moveit_robot</a> *robot)</td></tr>
+<tr class="separator:aa285fd973936b65c68cfb19c054edfb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a306c73cd3d0772a033fca3677fa547cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">manipulate_mapspace</a> (tf2::Transform &amp;tf, tf2::Vector3 &amp;size)</td></tr>
+<tr class="separator:a306c73cd3d0772a033fca3677fa547cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace031e7894f77a460ce5782a6e3160e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">mediate</a> () override</td></tr>
+<tr class="separator:ace031e7894f77a460ce5782a6e3160e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafcbc3db53825d13dacdf6417e207d84"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td></tr>
+<tr class="separator:aafcbc3db53825d13dacdf6417e207d84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2e01237a4927df1d71d99276e56761e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">planFullGrasp</a> (std::vector&lt; moveit_grasps::GraspCandidatePtr &gt; &amp;grasp_candidates, moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan, const std::string &amp;object_name)</td></tr>
+<tr class="separator:ad2e01237a4927df1d71d99276e56761e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa27d054a12c40a0e4fe3e94da271df83"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">planPreApproach</a> (const robot_state::RobotState &amp;goal_state, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</td></tr>
+<tr class="separator:aa27d054a12c40a0e4fe3e94da271df83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4c5933ccfcbf7ca153a039ad00a865f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">scene_setup</a> ()</td></tr>
+<tr class="separator:af4c5933ccfcbf7ca153a039ad00a865f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba249a3b9ac5f2b4c426de836eb7d6eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">visualizePick</a> (const moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, const moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</td></tr>
+<tr class="separator:aba249a3b9ac5f2b4c426de836eb7d6eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9c8056fd38678f42c75119bc2b057e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">waitForNextStep</a> (const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, const std::string &amp;prompt)</td></tr>
+<tr class="separator:ab9c8056fd38678f42c75119bc2b057e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classMoveit__mediator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classMoveit__mediator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td></tr>
+<tr class="memitem:a3196ded3639d69478121db539eaa3d1f inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">build_wings</a> (std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</td></tr>
+<tr class="separator:a3196ded3639d69478121db539eaa3d1f inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab20eabb5f72715df3bb9305d216ea66a inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">check_collision</a> (const int &amp;robot) override</td></tr>
+<tr class="separator:ab20eabb5f72715df3bb9305d216ea66a inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43b776b7aaf2d7203c5bc860cdc6dc5b inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="separator:a43b776b7aaf2d7203c5bc860cdc6dc5b inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7582bb7618f935c486681d9435fc02e5 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">moveit::task_constructor::Task&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a> (<a class="el" href="classMoveit__robot.html">Moveit_robot</a> *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td></tr>
+<tr class="separator:a7582bb7618f935c486681d9435fc02e5 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab864f0b277826dafff1944d9f884acff inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">mediate</a> () override</td></tr>
+<tr class="separator:ab864f0b277826dafff1944d9f884acff inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5724e8b5966c640ff005f4aaae48f2a4 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a> (moveit_msgs::PlanningScene &amp;in)</td></tr>
+<tr class="separator:a5724e8b5966c640ff005f4aaae48f2a4 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a061e0ca9e84b36ec1bf33a6bd4104417 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a> (moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, <a class="el" href="classMoveit__robot.html">Moveit_robot</a> *mr)</td></tr>
+<tr class="separator:a061e0ca9e84b36ec1bf33a6bd4104417 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac9157796fc133cdab1b22ef66ef8889 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a> ()</td></tr>
+<tr class="separator:aac9157796fc133cdab1b22ef66ef8889 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ac25277f557f65084d0245ecd8246bf inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td></tr>
+<tr class="separator:a9ac25277f557f65084d0245ecd8246bf inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1883a9e06be1b1684b76bd44f5925bf3 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">parallel_exec</a> (<a class="el" href="classMoveit__robot.html">Moveit_robot</a> &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</td></tr>
+<tr class="separator:a1883a9e06be1b1684b76bd44f5925bf3 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a054489ae555d8ecd197b23d09e40be47 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a> ()</td></tr>
+<tr class="separator:a054489ae555d8ecd197b23d09e40be47 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6913d3c81c3a30d9a628d0fe4756776c inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">rewrite_task_template</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td></tr>
+<tr class="separator:a6913d3c81c3a30d9a628d0fe4756776c inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf8ec374cb01f96ef41dea8bb0bae963 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">set_tasks</a> (std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;tasks)</td></tr>
+<tr class="separator:acf8ec374cb01f96ef41dea8bb0bae963 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77b4aae7790bdd2a24a2941d9fca43b3 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">set_wings</a> (std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;wbp) override</td></tr>
+<tr class="separator:a77b4aae7790bdd2a24a2941d9fca43b3 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9a1f61e86fa295e426f751ff7ea8838 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a> ()</td></tr>
+<tr class="separator:ab9a1f61e86fa295e426f751ff7ea8838 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab11f9ee155b39e5809f75d9dfd44f34c inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">task_map</a> ()</td></tr>
+<tr class="separator:ab11f9ee155b39e5809f75d9dfd44f34c inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae1a6378021b727fdfd1f1f3816b41c6 inherit pub_methods_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a> ()</td></tr>
+<tr class="separator:aae1a6378021b727fdfd1f1f3816b41c6 inherit pub_methods_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator constructor.  <a href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">More...</a><br /></td></tr>
+<tr class="separator:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">connect_robots</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; robot)=0</td></tr>
+<tr class="memdesc:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual robot connecting methode  <a href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">More...</a><br /></td></tr>
+<tr class="separator:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="memdesc:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dirname.  <a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">More...</a><br /></td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a> ()</td></tr>
+<tr class="separator:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a> ()</td></tr>
+<tr class="memdesc:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get result_vector.  <a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">More...</a><br /></td></tr>
+<tr class="separator:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a> ()</td></tr>
+<tr class="separator:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a> ()</td></tr>
+<tr class="memdesc:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robots.  <a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">More...</a><br /></td></tr>
+<tr class="separator:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="memdesc:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set dirname.  <a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">More...</a><br /></td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="memdesc:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set result vector.  <a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">More...</a><br /></td></tr>
+<tr class="separator:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a> (std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="separator:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="memdesc:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloud converter.  <a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">More...</a><br /></td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a> ()</td></tr>
+<tr class="separator:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a> ()</td></tr>
+<tr class="memdesc:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wings.  <a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">More...</a><br /></td></tr>
+<tr class="separator:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a6ed9b1a3d7b66a75cc2f0c5712cf7a62"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a></td></tr>
+<tr class="separator:a6ed9b1a3d7b66a75cc2f0c5712cf7a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7358966adab0fea05c2587e492273cb0"><td class="memItemLeft" align="right" valign="top">std::vector&lt; GraspMap &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a></td></tr>
+<tr class="separator:a7358966adab0fea05c2587e492273cb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61afc06c74fcadd24af49e74e69730cc"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a></td></tr>
+<tr class="separator:a61afc06c74fcadd24af49e74e69730cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada64005701a160ab15e54664a0a9f118"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classJob__reader.html">Job_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">job_reader_</a></td></tr>
+<tr class="separator:ada64005701a160ab15e54664a0a9f118"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c03d26fbb07ddfce88c0134a269db26"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; planning_pipeline::PlanningPipeline &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">planning_pipeline_</a></td></tr>
+<tr class="separator:a2c03d26fbb07ddfce88c0134a269db26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb66e0ab29aa994a762ec03d501dff09"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classRobot__reader.html">Robot_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">robot_reader_</a></td></tr>
+<tr class="separator:adb66e0ab29aa994a762ec03d501dff09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add410bc786e487285644dbbfd1cc4435"><td class="memItemLeft" align="right" valign="top">boost::dynamic_bitset&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">voxel_environment_</a></td></tr>
+<tr class="separator:add410bc786e487285644dbbfd1cc4435"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae22e5102cea0d7c0ad9da4b2fad997f0"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; VoxelManager &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a></td></tr>
+<tr class="separator:ae22e5102cea0d7c0ad9da4b2fad997f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0807f49aeb0b5a21b2f9ce52a9d690bf"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">wing_reader_</a></td></tr>
+<tr class="separator:a0807f49aeb0b5a21b2f9ce52a9d690bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classMoveit__mediator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classMoveit__mediator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td></tr>
+<tr class="memitem:adb99cac7a2807485330065b7019f7f2d inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; uint8_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a></td></tr>
+<tr class="separator:adb99cac7a2807485330065b7019f7f2d inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeea1b8bf554a8a338f6548a100624b30 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::task_constructor::solvers::CartesianPath &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a></td></tr>
+<tr class="separator:aeea1b8bf554a8a338f6548a100624b30 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad95fe10af2afc29db1dc5bab04d314dd inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classCuboid__reader.html">Cuboid_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">cuboid_reader_</a></td></tr>
+<tr class="separator:ad95fe10af2afc29db1dc5bab04d314dd inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08a10d6b7faba5468f45182667be7b4d inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classJob__reader.html">Job_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">job_reader_</a></td></tr>
+<tr class="separator:a08a10d6b7faba5468f45182667be7b4d inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3d550e1db30b83e6f6bf25536dd5c78 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a></td></tr>
+<tr class="separator:ac3d550e1db30b83e6f6bf25536dd5c78 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9673dc2802ed32e576ff58bde8dc52eb inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a></td></tr>
+<tr class="separator:a9673dc2802ed32e576ff58bde8dc52eb inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40026b9dc0519dbb0bb4e649cdebab37 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::Publisher &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a></td></tr>
+<tr class="separator:a40026b9dc0519dbb0bb4e649cdebab37 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5368a1e8034689de7c2fd15c680b7e5 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; planning_scene_monitor::PlanningSceneMonitor &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a></td></tr>
+<tr class="separator:ae5368a1e8034689de7c2fd15c680b7e5 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a613cd260bba43012848ea0a80452cf09 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; planning_scene::PlanningScene &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a></td></tr>
+<tr class="separator:a613cd260bba43012848ea0a80452cf09 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c349f21f00ee6ec4cbb290557fe6a39 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; moveit::planning_interface::PlanningSceneInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a></td></tr>
+<tr class="separator:a4c349f21f00ee6ec4cbb290557fe6a39 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f4a8f20841b33341c4991ee00fef75e inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::core::RobotModel &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a></td></tr>
+<tr class="separator:a6f4a8f20841b33341c4991ee00fef75e inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31a36d397814aff398138b7ce8583155 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::task_constructor::solvers::PipelinePlanner &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a></td></tr>
+<tr class="separator:a31a36d397814aff398138b7ce8583155 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56194f2f70bc9b469a8422dfef0cf602 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a></td></tr>
+<tr class="separator:a56194f2f70bc9b469a8422dfef0cf602 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa330766933e58c781067b1b943ce47a6 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a></td></tr>
+<tr class="separator:aa330766933e58c781067b1b943ce47a6 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2b6e5e089fbfc61afb5f0c25a320571 inherit pro_attribs_classMoveit__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit_visual_tools::MoveItVisualTools &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a></td></tr>
+<tr class="separator:af2b6e5e089fbfc61afb5f0c25a320571 inherit pro_attribs_classMoveit__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td></tr>
+<tr class="memdesc:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirname of the reference protobuff.  <a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">More...</a><br /></td></tr>
+<tr class="separator:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td></tr>
+<tr class="memdesc:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">More...</a><br /></td></tr>
+<tr class="separator:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td></tr>
+<tr class="separator:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">ros::Publisher *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td></tr>
+<tr class="separator:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td></tr>
+<tr class="memdesc:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">total bound a workspace  <a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">More...</a><br /></td></tr>
+<tr class="separator:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td></tr>
+<tr class="separator:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td></tr>
+<tr class="memdesc:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result_vector of base positions linked to robot.  <a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">More...</a><br /></td></tr>
+<tr class="separator:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td></tr>
+<tr class="separator:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td></tr>
+<tr class="memdesc:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Robots agents.  <a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">More...</a><br /></td></tr>
+<tr class="separator:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td></tr>
+<tr class="memdesc:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task_space reader which provides drop off positions.  <a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">More...</a><br /></td></tr>
+<tr class="separator:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td></tr>
+<tr class="separator:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td></tr>
+<tr class="separator:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00023">23</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aafcbc3db53825d13dacdf6417e207d84"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafcbc3db53825d13dacdf6417e207d84">&#9670;&nbsp;</a></span>Moveit_grasp_mediator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Moveit_grasp_mediator::Moveit_grasp_mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt;&#160;</td>
+          <td class="paramname"><em>objects</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">ros::Publisher *&#160;</td>
+          <td class="paramname"><em>pub</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>nh</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00525">525</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aa9b3d92f1177b7ed103400bd5e1aa558"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9b3d92f1177b7ed103400bd5e1aa558">&#9670;&nbsp;</a></span>connect_robots()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00008">8</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1c5f2ad1dedf0b71711725e2d96c3b2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c5f2ad1dedf0b71711725e2d96c3b2d">&#9670;&nbsp;</a></span>generateRandomCuboid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_grasp_mediator::generateRandomCuboid </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>object_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">geometry_msgs::Pose &amp;&#160;</td>
+          <td class="paramname"><em>object_pose</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double &amp;&#160;</td>
+          <td class="paramname"><em>x_depth</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double &amp;&#160;</td>
+          <td class="paramname"><em>y_width</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">double &amp;&#160;</td>
+          <td class="paramname"><em>z_height</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00108">108</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa469150a38fcf4e8a3d9acde59e4b519"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa469150a38fcf4e8a3d9acde59e4b519">&#9670;&nbsp;</a></span>getIKSolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_grasp_mediator::getIKSolution </td>
+          <td>(</td>
+          <td class="paramtype">const moveit::core::JointModelGroup *&#160;</td>
+          <td class="paramname"><em>arm_jmg</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const Eigen::Isometry3d &amp;&#160;</td>
+          <td class="paramname"><em>target_pose</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">robot_state::RobotState &amp;&#160;</td>
+          <td class="paramname"><em>solution</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>link_name</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00483">483</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a97f68aabffc7f663ab03927084044311"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97f68aabffc7f663ab03927084044311">&#9670;&nbsp;</a></span>isStateValid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_grasp_mediator::isStateValid </td>
+          <td>(</td>
+          <td class="paramtype">const planning_scene::PlanningScene *&#160;</td>
+          <td class="paramname"><em>planning_scene</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const moveit_visual_tools::MoveItVisualToolsPtr &amp;&#160;</td>
+          <td class="paramname"><em>visual_tools</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">robot_state::RobotState *&#160;</td>
+          <td class="paramname"><em>robot_state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const robot_model::JointModelGroup *&#160;</td>
+          <td class="paramname"><em>group</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const double *&#160;</td>
+          <td class="paramname"><em>ik_solution</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00474">474</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa285fd973936b65c68cfb19c054edfb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa285fd973936b65c68cfb19c054edfb5">&#9670;&nbsp;</a></span>manipulate_grasp_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::manipulate_grasp_data </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classMoveit__robot.html">Moveit_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00049">49</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a306c73cd3d0772a033fca3677fa547cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a306c73cd3d0772a033fca3677fa547cc">&#9670;&nbsp;</a></span>manipulate_mapspace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::manipulate_mapspace </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00035">35</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ace031e7894f77a460ce5782a6e3160e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace031e7894f77a460ce5782a6e3160e8">&#9670;&nbsp;</a></span>mediate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00141">141</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad2e01237a4927df1d71d99276e56761e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2e01237a4927df1d71d99276e56761e">&#9670;&nbsp;</a></span>planFullGrasp()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_grasp_mediator::planFullGrasp </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; moveit_grasps::GraspCandidatePtr &gt; &amp;&#160;</td>
+          <td class="paramname"><em>grasp_candidates</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_grasps::GraspCandidatePtr &amp;&#160;</td>
+          <td class="paramname"><em>valid_grasp_candidate</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::MotionPlanResponse &amp;&#160;</td>
+          <td class="paramname"><em>pre_approach_plan</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>object_name</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00382">382</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa27d054a12c40a0e4fe3e94da271df83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa27d054a12c40a0e4fe3e94da271df83">&#9670;&nbsp;</a></span>planPreApproach()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_grasp_mediator::planPreApproach </td>
+          <td>(</td>
+          <td class="paramtype">const robot_state::RobotState &amp;&#160;</td>
+          <td class="paramname"><em>goal_state</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::MotionPlanResponse &amp;&#160;</td>
+          <td class="paramname"><em>pre_approach_plan</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00429">429</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af4c5933ccfcbf7ca153a039ad00a865f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4c5933ccfcbf7ca153a039ad00a865f">&#9670;&nbsp;</a></span>scene_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::scene_setup </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00501">501</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aba249a3b9ac5f2b4c426de836eb7d6eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba249a3b9ac5f2b4c426de836eb7d6eb">&#9670;&nbsp;</a></span>visualizePick()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::visualizePick </td>
+          <td>(</td>
+          <td class="paramtype">const moveit_grasps::GraspCandidatePtr &amp;&#160;</td>
+          <td class="paramname"><em>valid_grasp_candidate</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const moveit_msgs::MotionPlanResponse &amp;&#160;</td>
+          <td class="paramname"><em>pre_approach_plan</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00318">318</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab9c8056fd38678f42c75119bc2b057e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9c8056fd38678f42c75119bc2b057e4">&#9670;&nbsp;</a></span>waitForNextStep()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_grasp_mediator::waitForNextStep </td>
+          <td>(</td>
+          <td class="paramtype">const moveit_visual_tools::MoveItVisualToolsPtr &amp;&#160;</td>
+          <td class="paramname"><em>visual_tools</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>prompt</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8cpp_source.html#l00424">424</a> of file <a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a6ed9b1a3d7b66a75cc2f0c5712cf7a62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">&#9670;&nbsp;</a></span>cuboid_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a>&gt; Moveit_grasp_mediator::cuboid_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00035">35</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a7358966adab0fea05c2587e492273cb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7358966adab0fea05c2587e492273cb0">&#9670;&nbsp;</a></span>grasp_maps_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;GraspMap&gt; Moveit_grasp_mediator::grasp_maps_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00029">29</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a61afc06c74fcadd24af49e74e69730cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61afc06c74fcadd24af49e74e69730cc">&#9670;&nbsp;</a></span>grasp_ns_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Moveit_grasp_mediator::grasp_ns_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00027">27</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ada64005701a160ab15e54664a0a9f118"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ada64005701a160ab15e54664a0a9f118">&#9670;&nbsp;</a></span>job_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classJob__reader.html">Job_reader</a>&gt; Moveit_grasp_mediator::job_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00036">36</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a2c03d26fbb07ddfce88c0134a269db26"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c03d26fbb07ddfce88c0134a269db26">&#9670;&nbsp;</a></span>planning_pipeline_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;planning_pipeline::PlanningPipeline&gt; Moveit_grasp_mediator::planning_pipeline_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00025">25</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="adb66e0ab29aa994a762ec03d501dff09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb66e0ab29aa994a762ec03d501dff09">&#9670;&nbsp;</a></span>robot_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classRobot__reader.html">Robot_reader</a>&gt; Moveit_grasp_mediator::robot_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00033">33</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="add410bc786e487285644dbbfd1cc4435"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add410bc786e487285644dbbfd1cc4435">&#9670;&nbsp;</a></span>voxel_environment_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">boost::dynamic_bitset Moveit_grasp_mediator::voxel_environment_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00028">28</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae22e5102cea0d7c0ad9da4b2fad997f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae22e5102cea0d7c0ad9da4b2fad997f0">&#9670;&nbsp;</a></span>voxel_manager_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;VoxelManager&gt; Moveit_grasp_mediator::voxel_manager_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00026">26</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a0807f49aeb0b5a21b2f9ce52a9d690bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0807f49aeb0b5a21b2f9ce52a9d690bf">&#9670;&nbsp;</a></span>wing_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a>&gt; Moveit_grasp_mediator::wing_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__grasp__mediator_8h_source.html#l00034">34</a> of file <a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="moveit__grasp__mediator_8h_source.html">moveit_grasp_mediator.h</a></li>
+<li><a class="el" href="moveit__grasp__mediator_8cpp_source.html">moveit_grasp_mediator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__grasp__mediator__inherit__graph.map b/doc/html/classMoveit__grasp__mediator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..2389f094bc70c06b03a4ca13e9d70a7c9d417fe6
--- /dev/null
+++ b/doc/html/classMoveit__grasp__mediator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Moveit_grasp_mediator" name="Moveit_grasp_mediator">
+<area shape="rect" id="node1" title=" " alt="" coords="5,155,181,181"/>
+<area shape="rect" id="node2" href="$classMoveit__mediator.html" title=" " alt="" coords="27,80,160,107"/>
+<area shape="rect" id="node3" href="$classAbstract__mediator.html" title="Abstract mediator." alt="" coords="22,5,165,32"/>
+</map>
diff --git a/doc/html/classMoveit__grasp__mediator__inherit__graph.md5 b/doc/html/classMoveit__grasp__mediator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8e27bb32864824d8e0f18d43f699ed0e132fb932
--- /dev/null
+++ b/doc/html/classMoveit__grasp__mediator__inherit__graph.md5
@@ -0,0 +1 @@
+9ca298a419d73068b21c44d13615686e
\ No newline at end of file
diff --git a/doc/html/classMoveit__grasp__mediator__inherit__graph.png b/doc/html/classMoveit__grasp__mediator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..66692a20b8a9ee85557c634f8303e3d9b81e4841
Binary files /dev/null and b/doc/html/classMoveit__grasp__mediator__inherit__graph.png differ
diff --git a/doc/html/classMoveit__mediator-members.html b/doc/html/classMoveit__mediator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..956a9d463ddb92059274f476bda4a01849bd7a17
--- /dev/null
+++ b/doc/html/classMoveit__mediator-members.html
@@ -0,0 +1,97 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Moveit_mediator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMoveit__mediator.html">Moveit_mediator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">build_wings</a>(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">check_collision</a>(const int &amp;robot) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">connect_robots</a>(Abstract_robot *robot) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">Abstract_mediator::connect_robots</a>(std::unique_ptr&lt; Abstract_robot_decorator &gt; robot)=0</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a>(Moveit_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">cuboid_reader_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a>(const tf2::Vector3 origin, const float diameter, float resolution)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">job_reader_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">mediate</a>() override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a>(moveit_msgs::PlanningScene &amp;in)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a>(moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, Moveit_robot *mr)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a>(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">parallel_exec</a>(Moveit_robot &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">rewrite_task_template</a>(Abstract_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string &amp;dirn)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">set_tasks</a>(std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;tasks)</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">set_wings</a>(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">task_map</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a>()</td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a></td><td class="entry"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>()</td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td><td class="entry"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__mediator.html b/doc/html/classMoveit__mediator.html
new file mode 100644
index 0000000000000000000000000000000000000000..81dce476fa835e8d7d619c6290b498c7dbbd2176
--- /dev/null
+++ b/doc/html/classMoveit__mediator.html
@@ -0,0 +1,1065 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Moveit_mediator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classMoveit__mediator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Moveit_mediator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Moveit_mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMoveit__mediator__inherit__graph.png" border="0" usemap="#Moveit__mediator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Moveit__mediator_inherit__map" id="Moveit__mediator_inherit__map">
+<area shape="rect" title=" " alt="" coords="27,80,160,107"/>
+<area shape="rect" href="classMoveit__grasp__mediator.html" title=" " alt="" coords="5,155,181,181"/>
+<area shape="rect" href="classAbstract__mediator.html" title="Abstract mediator." alt="" coords="22,5,165,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3196ded3639d69478121db539eaa3d1f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">build_wings</a> (std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</td></tr>
+<tr class="separator:a3196ded3639d69478121db539eaa3d1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab20eabb5f72715df3bb9305d216ea66a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">check_collision</a> (const int &amp;robot) override</td></tr>
+<tr class="separator:ab20eabb5f72715df3bb9305d216ea66a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43b776b7aaf2d7203c5bc860cdc6dc5b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">connect_robots</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="separator:a43b776b7aaf2d7203c5bc860cdc6dc5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7582bb7618f935c486681d9435fc02e5"><td class="memItemLeft" align="right" valign="top">moveit::task_constructor::Task&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a> (<a class="el" href="classMoveit__robot.html">Moveit_robot</a> *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td></tr>
+<tr class="separator:a7582bb7618f935c486681d9435fc02e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab864f0b277826dafff1944d9f884acff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">mediate</a> () override</td></tr>
+<tr class="separator:ab864f0b277826dafff1944d9f884acff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5724e8b5966c640ff005f4aaae48f2a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a> (moveit_msgs::PlanningScene &amp;in)</td></tr>
+<tr class="separator:a5724e8b5966c640ff005f4aaae48f2a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a061e0ca9e84b36ec1bf33a6bd4104417"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a> (moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, <a class="el" href="classMoveit__robot.html">Moveit_robot</a> *mr)</td></tr>
+<tr class="separator:a061e0ca9e84b36ec1bf33a6bd4104417"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac9157796fc133cdab1b22ef66ef8889"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a> ()</td></tr>
+<tr class="separator:aac9157796fc133cdab1b22ef66ef8889"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ac25277f557f65084d0245ecd8246bf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</td></tr>
+<tr class="separator:a9ac25277f557f65084d0245ecd8246bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1883a9e06be1b1684b76bd44f5925bf3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">parallel_exec</a> (<a class="el" href="classMoveit__robot.html">Moveit_robot</a> &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</td></tr>
+<tr class="separator:a1883a9e06be1b1684b76bd44f5925bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a054489ae555d8ecd197b23d09e40be47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a> ()</td></tr>
+<tr class="separator:a054489ae555d8ecd197b23d09e40be47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6913d3c81c3a30d9a628d0fe4756776c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">rewrite_task_template</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</td></tr>
+<tr class="separator:a6913d3c81c3a30d9a628d0fe4756776c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf8ec374cb01f96ef41dea8bb0bae963"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">set_tasks</a> (std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;tasks)</td></tr>
+<tr class="separator:acf8ec374cb01f96ef41dea8bb0bae963"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77b4aae7790bdd2a24a2941d9fca43b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">set_wings</a> (std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;wbp) override</td></tr>
+<tr class="separator:a77b4aae7790bdd2a24a2941d9fca43b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9a1f61e86fa295e426f751ff7ea8838"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a> ()</td></tr>
+<tr class="separator:ab9a1f61e86fa295e426f751ff7ea8838"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab11f9ee155b39e5809f75d9dfd44f34c"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">task_map</a> ()</td></tr>
+<tr class="separator:ab11f9ee155b39e5809f75d9dfd44f34c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae1a6378021b727fdfd1f1f3816b41c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a> ()</td></tr>
+<tr class="separator:aae1a6378021b727fdfd1f1f3816b41c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">Abstract_mediator</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator constructor.  <a href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">More...</a><br /></td></tr>
+<tr class="separator:a724fb5c020cca45732464f0227c854b6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a> (std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</td></tr>
+<tr class="separator:a42b339e1ffa0b206129cc11fa300b217 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">connect_robots</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; robot)=0</td></tr>
+<tr class="memdesc:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">pure virtual robot connecting methode  <a href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">More...</a><br /></td></tr>
+<tr class="separator:aec722e2a7493b29b04b613b800883cf9 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a> ()</td></tr>
+<tr class="memdesc:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dirname.  <a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">More...</a><br /></td></tr>
+<tr class="separator:ad651113a7bd5059643177c7b5fc08b8d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a> (const tf2::Vector3 origin, const float diameter, float resolution)</td></tr>
+<tr class="separator:a0127bf58ba90cd82b39b0dfe4dfbe88a inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a> ()</td></tr>
+<tr class="separator:a9a4028042141d35f7429f92db32599c2 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a> ()</td></tr>
+<tr class="memdesc:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get result_vector.  <a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">More...</a><br /></td></tr>
+<tr class="separator:ada2fc1c6243fcb68ec2daf7bf52e17a4 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a> ()</td></tr>
+<tr class="separator:a24f9a262c71f04f66550da4f61746e62 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a> ()</td></tr>
+<tr class="memdesc:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robots.  <a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">More...</a><br /></td></tr>
+<tr class="separator:ac905db346790f6bac814cdb7cd1f268d inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a> (std::string &amp;dirn)</td></tr>
+<tr class="memdesc:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set dirname.  <a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">More...</a><br /></td></tr>
+<tr class="separator:a64323b190e965287422f7b840bc1b95f inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="memdesc:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set result vector.  <a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">More...</a><br /></td></tr>
+<tr class="separator:aa12e37e26ac0e75fadb103bc50285408 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a> (std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</td></tr>
+<tr class="separator:a45f051cc8b3816677c638f805e805838 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a> (std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</td></tr>
+<tr class="memdesc:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cloud converter.  <a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">More...</a><br /></td></tr>
+<tr class="separator:a26d47b6d6d64a8eb4b096fcb5f78b389 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a> ()</td></tr>
+<tr class="separator:a9838c41eeb97aef668cd7213f0e2e9a6 inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a> ()</td></tr>
+<tr class="memdesc:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wings.  <a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">More...</a><br /></td></tr>
+<tr class="separator:a525894d2f6a888163c9de63093b2bd6c inherit pub_methods_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:adb99cac7a2807485330065b7019f7f2d"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; uint8_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a></td></tr>
+<tr class="separator:adb99cac7a2807485330065b7019f7f2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeea1b8bf554a8a338f6548a100624b30"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::task_constructor::solvers::CartesianPath &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a></td></tr>
+<tr class="separator:aeea1b8bf554a8a338f6548a100624b30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad95fe10af2afc29db1dc5bab04d314dd"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classCuboid__reader.html">Cuboid_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">cuboid_reader_</a></td></tr>
+<tr class="separator:ad95fe10af2afc29db1dc5bab04d314dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08a10d6b7faba5468f45182667be7b4d"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classJob__reader.html">Job_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">job_reader_</a></td></tr>
+<tr class="separator:a08a10d6b7faba5468f45182667be7b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3d550e1db30b83e6f6bf25536dd5c78"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a></td></tr>
+<tr class="separator:ac3d550e1db30b83e6f6bf25536dd5c78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9673dc2802ed32e576ff58bde8dc52eb"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a></td></tr>
+<tr class="separator:a9673dc2802ed32e576ff58bde8dc52eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40026b9dc0519dbb0bb4e649cdebab37"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::Publisher &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a></td></tr>
+<tr class="separator:a40026b9dc0519dbb0bb4e649cdebab37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5368a1e8034689de7c2fd15c680b7e5"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; planning_scene_monitor::PlanningSceneMonitor &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a></td></tr>
+<tr class="separator:ae5368a1e8034689de7c2fd15c680b7e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a613cd260bba43012848ea0a80452cf09"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; planning_scene::PlanningScene &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a></td></tr>
+<tr class="separator:a613cd260bba43012848ea0a80452cf09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c349f21f00ee6ec4cbb290557fe6a39"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; moveit::planning_interface::PlanningSceneInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a></td></tr>
+<tr class="separator:a4c349f21f00ee6ec4cbb290557fe6a39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f4a8f20841b33341c4991ee00fef75e"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::core::RobotModel &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a></td></tr>
+<tr class="separator:a6f4a8f20841b33341c4991ee00fef75e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31a36d397814aff398138b7ce8583155"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::task_constructor::solvers::PipelinePlanner &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a></td></tr>
+<tr class="separator:a31a36d397814aff398138b7ce8583155"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56194f2f70bc9b469a8422dfef0cf602"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a></td></tr>
+<tr class="separator:a56194f2f70bc9b469a8422dfef0cf602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa330766933e58c781067b1b943ce47a6"><td class="memItemLeft" align="right" valign="top">std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a></td></tr>
+<tr class="separator:aa330766933e58c781067b1b943ce47a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2b6e5e089fbfc61afb5f0c25a320571"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit_visual_tools::MoveItVisualTools &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a></td></tr>
+<tr class="separator:af2b6e5e089fbfc61afb5f0c25a320571"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__mediator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__mediator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memitem:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a></td></tr>
+<tr class="memdesc:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirname of the reference protobuff.  <a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">More...</a><br /></td></tr>
+<tr class="separator:ad4565f4b98c689289ddda9e7507736ae inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a></td></tr>
+<tr class="memdesc:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">More...</a><br /></td></tr>
+<tr class="separator:a47ae440332d8744b368f6f95a84daf2a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a></td></tr>
+<tr class="separator:a78a9e79c0a97238c7d76ec1a3cc7349c inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">ros::Publisher *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a></td></tr>
+<tr class="separator:a77682034ad695305a6781b53af93d05e inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a></td></tr>
+<tr class="memdesc:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">total bound a workspace  <a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">More...</a><br /></td></tr>
+<tr class="separator:a4580d0c30a62cc91203b950694f98e98 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a></td></tr>
+<tr class="separator:a9a48fc344129cd16dc0f20be2d9368ab inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a></td></tr>
+<tr class="memdesc:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result_vector of base positions linked to robot.  <a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">More...</a><br /></td></tr>
+<tr class="separator:a4458d27f8d22f7ff58dc8191e1019e5a inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a></td></tr>
+<tr class="separator:a66416f41c207636fcf0b5223c2f70061 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a></td></tr>
+<tr class="memdesc:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Robots agents.  <a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">More...</a><br /></td></tr>
+<tr class="separator:a69df414af025faf785c9034633240282 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a></td></tr>
+<tr class="memdesc:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task_space reader which provides drop off positions.  <a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">More...</a><br /></td></tr>
+<tr class="separator:a25e0b0dc5a154ad28d68f58500234d56 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a></td></tr>
+<tr class="separator:ae7e91c3c5ac234ee1d1bd2d7d6128bc8 inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a></td></tr>
+<tr class="separator:a85b75b44d1f17f2d52c5e6171c13456b inherit pro_attribs_classAbstract__mediator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00054">54</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a9ac25277f557f65084d0245ecd8246bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ac25277f557f65084d0245ecd8246bf">&#9670;&nbsp;</a></span>Moveit_mediator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Moveit_mediator::Moveit_mediator </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt;&#160;</td>
+          <td class="paramname"><em>objects</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">ros::Publisher *&#160;</td>
+          <td class="paramname"><em>pub</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>nh</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l01262">1262</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a3196ded3639d69478121db539eaa3d1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3196ded3639d69478121db539eaa3d1f">&#9670;&nbsp;</a></span>build_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::build_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::bitset&lt; 3 &gt; &amp;&#160;</td>
+          <td class="paramname"><em>wing</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00076">76</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab20eabb5f72715df3bb9305d216ea66a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab20eabb5f72715df3bb9305d216ea66a">&#9670;&nbsp;</a></span>check_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Moveit_mediator::check_collision </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00061">61</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a43b776b7aaf2d7203c5bc860cdc6dc5b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43b776b7aaf2d7203c5bc860cdc6dc5b">&#9670;&nbsp;</a></span>connect_robots()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::connect_robots </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00014">14</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a7582bb7618f935c486681d9435fc02e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7582bb7618f935c486681d9435fc02e5">&#9670;&nbsp;</a></span>create_Task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">moveit::task_constructor::Task Moveit_mediator::create_Task </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classMoveit__robot.html">Moveit_robot</a> *&#160;</td>
+          <td class="paramname"><em>r</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::CollisionObject &amp;&#160;</td>
+          <td class="paramname"><em>source</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>target</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00877">877</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab864f0b277826dafff1944d9f884acff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab864f0b277826dafff1944d9f884acff">&#9670;&nbsp;</a></span>mediate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::mediate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00067">67</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5724e8b5966c640ff005f4aaae48f2a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5724e8b5966c640ff005f4aaae48f2a4">&#9670;&nbsp;</a></span>merge_acm()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::merge_acm </td>
+          <td>(</td>
+          <td class="paramtype">moveit_msgs::PlanningScene &amp;&#160;</td>
+          <td class="paramname"><em>in</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00812">812</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a061e0ca9e84b36ec1bf33a6bd4104417"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a061e0ca9e84b36ec1bf33a6bd4104417">&#9670;&nbsp;</a></span>merge_ps()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::merge_ps </td>
+          <td>(</td>
+          <td class="paramtype">moveit_msgs::PlanningScene &amp;&#160;</td>
+          <td class="paramname"><em>out</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::PlanningScene *&#160;</td>
+          <td class="paramname"><em>in</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classMoveit__robot.html">Moveit_robot</a> *&#160;</td>
+          <td class="paramname"><em>mr</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00828">828</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aac9157796fc133cdab1b22ef66ef8889"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac9157796fc133cdab1b22ef66ef8889">&#9670;&nbsp;</a></span>mgi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_mediator::mgi </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00087">87</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a1883a9e06be1b1684b76bd44f5925bf3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1883a9e06be1b1684b76bd44f5925bf3">&#9670;&nbsp;</a></span>parallel_exec()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::parallel_exec </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classMoveit__robot.html">Moveit_robot</a> &amp;&#160;</td>
+          <td class="paramname"><em>r</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::RobotTrajectory&#160;</td>
+          <td class="paramname"><em>rt</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::PlanningScene&#160;</td>
+          <td class="paramname"><em>ps</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00871">871</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a054489ae555d8ecd197b23d09e40be47"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a054489ae555d8ecd197b23d09e40be47">&#9670;&nbsp;</a></span>publish_tables()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::publish_tables </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00024">24</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6913d3c81c3a30d9a628d0fe4756776c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6913d3c81c3a30d9a628d0fe4756776c">&#9670;&nbsp;</a></span>rewrite_task_template()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::rewrite_task_template </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>r</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">moveit_msgs::CollisionObject &amp;&#160;</td>
+          <td class="paramname"><em>source</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>target</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l01162">1162</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="acf8ec374cb01f96ef41dea8bb0bae963"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf8ec374cb01f96ef41dea8bb0bae963">&#9670;&nbsp;</a></span>set_tasks()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::set_tasks </td>
+          <td>(</td>
+          <td class="paramtype">std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>tasks</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00106">106</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a77b4aae7790bdd2a24a2941d9fca43b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77b4aae7790bdd2a24a2941d9fca43b3">&#9670;&nbsp;</a></span>set_wings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::set_wings </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>wbp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">Abstract_mediator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00087">87</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab9a1f61e86fa295e426f751ff7ea8838"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9a1f61e86fa295e426f751ff7ea8838">&#9670;&nbsp;</a></span>setup_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::setup_task </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00098">98</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab11f9ee155b39e5809f75d9dfd44f34c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab11f9ee155b39e5809f75d9dfd44f34c">&#9670;&nbsp;</a></span>task_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::vector&lt;moveit::task_constructor::Task&gt; &gt;&amp; Moveit_mediator::task_map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00105">105</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="aae1a6378021b727fdfd1f1f3816b41c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae1a6378021b727fdfd1f1f3816b41c6">&#9670;&nbsp;</a></span>task_planner()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_mediator::task_planner </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00696">696</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="adb99cac7a2807485330065b7019f7f2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb99cac7a2807485330065b7019f7f2d">&#9670;&nbsp;</a></span>acm_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::vector&lt;uint8_t&gt; &gt; Moveit_mediator::acm_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00076">76</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="aeea1b8bf554a8a338f6548a100624b30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeea1b8bf554a8a338f6548a100624b30">&#9670;&nbsp;</a></span>cartesian_planner_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::task_constructor::solvers::CartesianPath&gt; Moveit_mediator::cartesian_planner_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00070">70</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad95fe10af2afc29db1dc5bab04d314dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad95fe10af2afc29db1dc5bab04d314dd">&#9670;&nbsp;</a></span>cuboid_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classCuboid__reader.html">Cuboid_reader</a>&gt; Moveit_mediator::cuboid_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00074">74</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a08a10d6b7faba5468f45182667be7b4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08a10d6b7faba5468f45182667be7b4d">&#9670;&nbsp;</a></span>job_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classJob__reader.html">Job_reader</a>&gt; Moveit_mediator::job_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00073">73</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ac3d550e1db30b83e6f6bf25536dd5c78"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3d550e1db30b83e6f6bf25536dd5c78">&#9670;&nbsp;</a></span>mgi_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_mediator::mgi_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00061">61</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9673dc2802ed32e576ff58bde8dc52eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9673dc2802ed32e576ff58bde8dc52eb">&#9670;&nbsp;</a></span>nh_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::NodeHandle&gt; Moveit_mediator::nh_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00056">56</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a40026b9dc0519dbb0bb4e649cdebab37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40026b9dc0519dbb0bb4e649cdebab37">&#9670;&nbsp;</a></span>planning_scene_diff_publisher_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;ros::Publisher&gt; Moveit_mediator::planning_scene_diff_publisher_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00064">64</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae5368a1e8034689de7c2fd15c680b7e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5368a1e8034689de7c2fd15c680b7e5">&#9670;&nbsp;</a></span>planning_scene_monitor_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;planning_scene_monitor::PlanningSceneMonitor&gt; Moveit_mediator::planning_scene_monitor_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00065">65</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a613cd260bba43012848ea0a80452cf09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a613cd260bba43012848ea0a80452cf09">&#9670;&nbsp;</a></span>ps_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;planning_scene::PlanningScene&gt; Moveit_mediator::ps_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00063">63</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c349f21f00ee6ec4cbb290557fe6a39"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c349f21f00ee6ec4cbb290557fe6a39">&#9670;&nbsp;</a></span>psi_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;moveit::planning_interface::PlanningSceneInterface&gt; Moveit_mediator::psi_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00062">62</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a6f4a8f20841b33341c4991ee00fef75e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f4a8f20841b33341c4991ee00fef75e">&#9670;&nbsp;</a></span>robot_model_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::core::RobotModel&gt; Moveit_mediator::robot_model_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00057">57</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a31a36d397814aff398138b7ce8583155"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31a36d397814aff398138b7ce8583155">&#9670;&nbsp;</a></span>sampling_planner_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::task_constructor::solvers::PipelinePlanner&gt; Moveit_mediator::sampling_planner_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00069">69</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a56194f2f70bc9b469a8422dfef0cf602"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56194f2f70bc9b469a8422dfef0cf602">&#9670;&nbsp;</a></span>task_map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::vector&lt;moveit::task_constructor::Task&gt; &gt; Moveit_mediator::task_map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00071">71</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="aa330766933e58c781067b1b943ce47a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa330766933e58c781067b1b943ce47a6">&#9670;&nbsp;</a></span>tasks_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::multimap&lt;std::string, std::pair&lt;tf2::Vector3, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt; &gt; &gt; Moveit_mediator::tasks_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00077">77</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="af2b6e5e089fbfc61afb5f0c25a320571"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2b6e5e089fbfc61afb5f0c25a320571">&#9670;&nbsp;</a></span>visual_tools_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit_visual_tools::MoveItVisualTools&gt; Moveit_mediator::visual_tools_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8h_source.html#l00058">58</a> of file <a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="moveit__mediator_8h_source.html">moveit_mediator.h</a></li>
+<li><a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__mediator__inherit__graph.map b/doc/html/classMoveit__mediator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..80565d013549d7fe2f963492c78dcdaa2575b403
--- /dev/null
+++ b/doc/html/classMoveit__mediator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Moveit_mediator" name="Moveit_mediator">
+<area shape="rect" id="node1" title=" " alt="" coords="27,80,160,107"/>
+<area shape="rect" id="node3" href="$classMoveit__grasp__mediator.html" title=" " alt="" coords="5,155,181,181"/>
+<area shape="rect" id="node2" href="$classAbstract__mediator.html" title="Abstract mediator." alt="" coords="22,5,165,32"/>
+</map>
diff --git a/doc/html/classMoveit__mediator__inherit__graph.md5 b/doc/html/classMoveit__mediator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b0cc854b42d102a07d9aa600ceb916daceff14c7
--- /dev/null
+++ b/doc/html/classMoveit__mediator__inherit__graph.md5
@@ -0,0 +1 @@
+811bf2ccaee15da259bc2900614f327a
\ No newline at end of file
diff --git a/doc/html/classMoveit__mediator__inherit__graph.png b/doc/html/classMoveit__mediator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..fb091a7584e21c7c1287804762d51ed69dfd6a3e
Binary files /dev/null and b/doc/html/classMoveit__mediator__inherit__graph.png differ
diff --git a/doc/html/classMoveit__panel-members.html b/doc/html/classMoveit__panel-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..764bfc82e72b38e661da948bba65ad5939d0fe3c
--- /dev/null
+++ b/doc/html/classMoveit__panel-members.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Moveit_panel Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMoveit__panel.html">Moveit_panel</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">marker</a>()</td><td class="entry"><a class="el" href="classMoveit__panel.html">Moveit_panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a></td><td class="entry"><a class="el" href="classMoveit__panel.html">Moveit_panel</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classMoveit__panel.html">Moveit_panel</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a>(std::string str)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a>(tf2::Vector3 &amp;vec)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classMoveit__panel.html">Moveit_panel</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__panel.html b/doc/html/classMoveit__panel.html
new file mode 100644
index 0000000000000000000000000000000000000000..2382247bdd75e3e84307f556e8fac5a3bd58f738
--- /dev/null
+++ b/doc/html/classMoveit__panel.html
@@ -0,0 +1,242 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Moveit_panel Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classMoveit__panel-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Moveit_panel Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="moveit__panel_8h_source.html">moveit_panel.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Moveit_panel:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMoveit__panel__inherit__graph.png" border="0" usemap="#Moveit__panel_inherit__map" alt="Inheritance graph"/></div>
+<map name="Moveit__panel_inherit__map" id="Moveit__panel_inherit__map">
+<area shape="rect" title=" " alt="" coords="39,155,150,181"/>
+<area shape="rect" href="classPanel.html" title=" " alt="" coords="65,80,124,107"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3ea48e6b8a4a0d75297b735ae87e1406"><td class="memItemLeft" align="right" valign="top">moveit_msgs::CollisionObject &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">marker</a> ()</td></tr>
+<tr class="separator:a3ea48e6b8a4a0d75297b735ae87e1406"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace0a415c711a11c45d6a2e58aa707fb5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel</a> (std::string <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>)</td></tr>
+<tr class="separator:ace0a415c711a11c45d6a2e58aa707fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f9f446bd773e9ae6345511a66499331"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a0f9f446bd773e9ae6345511a66499331"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classPanel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classPanel')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classPanel.html">Panel</a></td></tr>
+<tr class="memitem:af4477404926c93431f4c369d36e945d6 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a> () override</td></tr>
+<tr class="separator:af4477404926c93431f4c369d36e945d6 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc3a14b055ba9004fa5ebdb34cd5e583 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a> () override</td></tr>
+<tr class="separator:abc3a14b055ba9004fa5ebdb34cd5e583 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f673224275e5ecb0db4d778f93e0bda inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a> (std::string <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>)</td></tr>
+<tr class="separator:a2f673224275e5ecb0db4d778f93e0bda inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58081e744b584114f23b80c1f3cee22e inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a> (std::string str)</td></tr>
+<tr class="separator:a58081e744b584114f23b80c1f3cee22e inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af865f7bb6545e057fcb0a76fd774a497 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a> (tf2::Vector3 &amp;vec)</td></tr>
+<tr class="separator:af865f7bb6545e057fcb0a76fd774a497 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6a63c29e5a5573b369482528c4b4818 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a> () override</td></tr>
+<tr class="separator:af6a63c29e5a5573b369482528c4b4818 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a70a607d1521d4df2360891afd2106f inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a2a70a607d1521d4df2360891afd2106f inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa3899db59afd593ef4ec2eb343f71b7 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a> () override</td></tr>
+<tr class="separator:aaa3899db59afd593ef4ec2eb343f71b7 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a4ca4542a08ce50772b2101fa4cd5e24f"><td class="memItemLeft" align="right" valign="top">moveit_msgs::CollisionObject&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a></td></tr>
+<tr class="separator:a4ca4542a08ce50772b2101fa4cd5e24f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="moveit__panel_8h_source.html#l00013">13</a> of file <a class="el" href="moveit__panel_8h_source.html">moveit_panel.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ace0a415c711a11c45d6a2e58aa707fb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace0a415c711a11c45d6a2e58aa707fb5">&#9670;&nbsp;</a></span>Moveit_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Moveit_panel::Moveit_panel </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__panel_8cpp_source.html#l00004">4</a> of file <a class="el" href="moveit__panel_8cpp_source.html">moveit_panel.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a3ea48e6b8a4a0d75297b735ae87e1406"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ea48e6b8a4a0d75297b735ae87e1406">&#9670;&nbsp;</a></span>marker()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">moveit_msgs::CollisionObject&amp; Moveit_panel::marker </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__panel_8h_source.html#l00021">21</a> of file <a class="el" href="moveit__panel_8h_source.html">moveit_panel.h</a>.</p>
+
+</div>
+</div>
+<a id="a0f9f446bd773e9ae6345511a66499331"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f9f446bd773e9ae6345511a66499331">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_panel::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="moveit__panel_8cpp_source.html#l00032">32</a> of file <a class="el" href="moveit__panel_8cpp_source.html">moveit_panel.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a4ca4542a08ce50772b2101fa4cd5e24f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ca4542a08ce50772b2101fa4cd5e24f">&#9670;&nbsp;</a></span>marker_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">moveit_msgs::CollisionObject Moveit_panel::marker_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__panel_8h_source.html#l00015">15</a> of file <a class="el" href="moveit__panel_8h_source.html">moveit_panel.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="moveit__panel_8h_source.html">moveit_panel.h</a></li>
+<li><a class="el" href="moveit__panel_8cpp_source.html">moveit_panel.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__panel__inherit__graph.map b/doc/html/classMoveit__panel__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..488079570a2aee2065e6f1df9f9798272930d8d5
--- /dev/null
+++ b/doc/html/classMoveit__panel__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Moveit_panel" name="Moveit_panel">
+<area shape="rect" id="node1" title=" " alt="" coords="39,155,150,181"/>
+<area shape="rect" id="node2" href="$classPanel.html" title=" " alt="" coords="65,80,124,107"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classMoveit__panel__inherit__graph.md5 b/doc/html/classMoveit__panel__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9b6669a34c9293fdc91136833afedfba844bcded
--- /dev/null
+++ b/doc/html/classMoveit__panel__inherit__graph.md5
@@ -0,0 +1 @@
+58bd2ab5d5cbd18d623dd1140c989182
\ No newline at end of file
diff --git a/doc/html/classMoveit__panel__inherit__graph.png b/doc/html/classMoveit__panel__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..38a8cad83588780e70e50e8aa6c14e5a7c10b6c4
Binary files /dev/null and b/doc/html/classMoveit__panel__inherit__graph.png differ
diff --git a/doc/html/classMoveit__robot-members.html b/doc/html/classMoveit__robot-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..79dc1ba18c2c41f990f3b0bfd26b184d2387cc4e
--- /dev/null
+++ b/doc/html/classMoveit__robot-members.html
@@ -0,0 +1,93 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Moveit_robot Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classMoveit__robot.html">Moveit_robot</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">add_coll_markers</a>(moveit_msgs::CollisionObject *marker)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a>(Robot *R)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;str) override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">coll_markers</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">grasp_map_generator</a>()</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">grasp_map_generator_</a></td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a></td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>()</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">mgi_</a></td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">mgi_hand</a>()</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a></td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>() override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a>(Abstract_robot_element *wd)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">set_grasp_map_generator</a>(std::shared_ptr&lt; MapGenerator &gt;const &amp;d)</td><td class="entry"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__robot.html b/doc/html/classMoveit__robot.html
new file mode 100644
index 0000000000000000000000000000000000000000..76bb1251074e0c466b27f1a5be8a14392c55b71a
--- /dev/null
+++ b/doc/html/classMoveit__robot.html
@@ -0,0 +1,468 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Moveit_robot Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classMoveit__robot-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Moveit_robot Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Moveit_robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="classMoveit__robot__inherit__graph.png" border="0" usemap="#Moveit__robot_inherit__map" alt="Inheritance graph"/></div>
+<map name="Moveit__robot_inherit__map" id="Moveit__robot_inherit__map">
+<area shape="rect" title=" " alt="" coords="10,155,118,181"/>
+<area shape="rect" href="classRobot.html" title=" " alt="" coords="34,80,94,107"/>
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac3a9f2cfc74a1304a1faea5516252c28"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; MapGenerator &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">grasp_map_generator</a> ()</td></tr>
+<tr class="separator:ac3a9f2cfc74a1304a1faea5516252c28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad10c0b3b2e683870e784262123ba779c"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::string &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a> ()</td></tr>
+<tr class="separator:ad10c0b3b2e683870e784262123ba779c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac23f8ce7d2961979821f7678b551f5c4"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a> ()</td></tr>
+<tr class="separator:ac23f8ce7d2961979821f7678b551f5c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b52336368bd778fafb637ca2f20fc04"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">mgi_hand</a> ()</td></tr>
+<tr class="separator:a7b52336368bd778fafb637ca2f20fc04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab991a44b804dab173ca4c787c105d68a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ab991a44b804dab173ca4c787c105d68a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a70514d5e32fa947dfd54235d806ef0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">set_grasp_map_generator</a> (std::shared_ptr&lt; MapGenerator &gt;const &amp;d)</td></tr>
+<tr class="separator:a9a70514d5e32fa947dfd54235d806ef0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classRobot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classRobot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classRobot.html">Robot</a></td></tr>
+<tr class="memitem:a1a73b8eaedcdab4b7defcedd81f8c713 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a> ()</td></tr>
+<tr class="separator:a1a73b8eaedcdab4b7defcedd81f8c713 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab333a4150395873d947c791996171510 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">add_coll_markers</a> (moveit_msgs::CollisionObject *marker)</td></tr>
+<tr class="separator:ab333a4150395873d947c791996171510 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b60a38b7639a58095b3303052e4a801 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="separator:a0b60a38b7639a58095b3303052e4a801 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab57fc902b6e93336db5310abf05c8a92 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a> (<a class="el" href="classRobot.html">Robot</a> *R)</td></tr>
+<tr class="separator:ab57fc902b6e93336db5310abf05c8a92 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7bf74de30a186337b05cb05b74d0e73 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;str) override</td></tr>
+<tr class="separator:ab7bf74de30a186337b05cb05b74d0e73 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39fda5c987efad9c391bf4ce236e271f inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; moveit_msgs::CollisionObject * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">coll_markers</a> ()</td></tr>
+<tr class="separator:a39fda5c987efad9c391bf4ce236e271f inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cec7ea9000ee388e058ba6bfbe7640d inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a> ()</td></tr>
+<tr class="separator:a9cec7ea9000ee388e058ba6bfbe7640d inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab95c43650b9596fc2e9bc374abeeadf6 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a> () override</td></tr>
+<tr class="separator:ab95c43650b9596fc2e9bc374abeeadf6 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb6c8c47edbcc561f15b00d551a045e6 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a> ()</td></tr>
+<tr class="separator:aeb6c8c47edbcc561f15b00d551a045e6 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7eddff501a2c3a3d5feb6c2ec4b016e0 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *wd)</td></tr>
+<tr class="separator:a7eddff501a2c3a3d5feb6c2ec4b016e0 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af626880915da239eeb0793eb41ab7596 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a> ()</td></tr>
+<tr class="separator:af626880915da239eeb0793eb41ab7596 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ad9bc06ae12dedaf6eb97bc4398c34a inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a0ad9bc06ae12dedaf6eb97bc4398c34a inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e045dcd43e888a9e4cddc2a9e6abdc8 inherit pub_methods_classRobot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td></tr>
+<tr class="separator:a7e045dcd43e888a9e4cddc2a9e6abdc8 inherit pub_methods_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52c63e180b0a31cd9b97b824eb1b5c22 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a> ()=0</td></tr>
+<tr class="separator:a52c63e180b0a31cd9b97b824eb1b5c22 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a5d8cd75f0aa634022f09d88066d313 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a> ()=0</td></tr>
+<tr class="separator:a1a5d8cd75f0aa634022f09d88066d313 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62093041e9154e06ed573a42a76cc778 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a> ()=0</td></tr>
+<tr class="separator:a62093041e9154e06ed573a42a76cc778 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7a230da2f4551f707557a4f5fa447ac inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a> ()=0</td></tr>
+<tr class="separator:af7a230da2f4551f707557a4f5fa447ac inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13949665d4f8ac53aadc357883b301da inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a> ()=0</td></tr>
+<tr class="separator:a13949665d4f8ac53aadc357883b301da inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3e4f92f97f4a55fe9cb7196024fe30a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a> ()=0</td></tr>
+<tr class="separator:ae3e4f92f97f4a55fe9cb7196024fe30a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:ade0496c9088ddad701fb06ce2a514e8a"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; MapGenerator &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">grasp_map_generator_</a></td></tr>
+<tr class="separator:ade0496c9088ddad701fb06ce2a514e8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9551bfab3c080becc7d6d281dd53dcd"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a></td></tr>
+<tr class="separator:aa9551bfab3c080becc7d6d281dd53dcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef61abe18fca3cc07578265d3a2c2c59"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">mgi_</a></td></tr>
+<tr class="separator:aef61abe18fca3cc07578265d3a2c2c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14716dcae3fe594d6b16f10bc58ba226"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a></td></tr>
+<tr class="separator:a14716dcae3fe594d6b16f10bc58ba226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classRobot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classRobot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classRobot.html">Robot</a></td></tr>
+<tr class="memitem:aaeebeca358c747b158be2999664d4b6a inherit pro_attribs_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a></td></tr>
+<tr class="separator:aaeebeca358c747b158be2999664d4b6a inherit pro_attribs_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20984a642a92887a622d8e069884b8e8 inherit pro_attribs_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; moveit_msgs::CollisionObject * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a></td></tr>
+<tr class="separator:a20984a642a92887a622d8e069884b8e8 inherit pro_attribs_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6821b81b167e8bffbeca4beedc8033f8 inherit pro_attribs_classRobot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a></td></tr>
+<tr class="separator:a6821b81b167e8bffbeca4beedc8033f8 inherit pro_attribs_classRobot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00012">12</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ab991a44b804dab173ca4c787c105d68a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab991a44b804dab173ca4c787c105d68a">&#9670;&nbsp;</a></span>Moveit_robot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Moveit_robot::Moveit_robot </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00023">23</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac3a9f2cfc74a1304a1faea5516252c28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3a9f2cfc74a1304a1faea5516252c28">&#9670;&nbsp;</a></span>grasp_map_generator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;MapGenerator&gt; Moveit_robot::grasp_map_generator </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00045">45</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ad10c0b3b2e683870e784262123ba779c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad10c0b3b2e683870e784262123ba779c">&#9670;&nbsp;</a></span>map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::string&gt;&amp; Moveit_robot::map </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00048">48</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ac23f8ce7d2961979821f7678b551f5c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac23f8ce7d2961979821f7678b551f5c4">&#9670;&nbsp;</a></span>mgi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_robot::mgi </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00043">43</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a7b52336368bd778fafb637ca2f20fc04"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b52336368bd778fafb637ca2f20fc04">&#9670;&nbsp;</a></span>mgi_hand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_robot::mgi_hand </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00044">44</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a9a70514d5e32fa947dfd54235d806ef0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a70514d5e32fa947dfd54235d806ef0">&#9670;&nbsp;</a></span>set_grasp_map_generator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Moveit_robot::set_grasp_map_generator </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; MapGenerator &gt;const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00049">49</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ade0496c9088ddad701fb06ce2a514e8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade0496c9088ddad701fb06ce2a514e8a">&#9670;&nbsp;</a></span>grasp_map_generator_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;MapGenerator&gt; Moveit_robot::grasp_map_generator_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00018">18</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aa9551bfab3c080becc7d6d281dd53dcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9551bfab3c080becc7d6d281dd53dcd">&#9670;&nbsp;</a></span>map_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::string&gt; Moveit_robot::map_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00017">17</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="aef61abe18fca3cc07578265d3a2c2c59"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef61abe18fca3cc07578265d3a2c2c59">&#9670;&nbsp;</a></span>mgi_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_robot::mgi_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00014">14</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a14716dcae3fe594d6b16f10bc58ba226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14716dcae3fe594d6b16f10bc58ba226">&#9670;&nbsp;</a></span>mgi_hand_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; Moveit_robot::mgi_hand_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__robot_8h_source.html#l00015">15</a> of file <a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="moveit__robot_8h_source.html">moveit_robot.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classMoveit__robot__inherit__graph.map b/doc/html/classMoveit__robot__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..6a684a470bcf4e287f2278d40554157739f3f3c7
--- /dev/null
+++ b/doc/html/classMoveit__robot__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Moveit_robot" name="Moveit_robot">
+<area shape="rect" id="node1" title=" " alt="" coords="10,155,118,181"/>
+<area shape="rect" id="node2" href="$classRobot.html" title=" " alt="" coords="34,80,94,107"/>
+<area shape="rect" id="node3" href="$classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
diff --git a/doc/html/classMoveit__robot__inherit__graph.md5 b/doc/html/classMoveit__robot__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c35ae4f2dfb28064fd9ef8c8a4116ee86f2de362
--- /dev/null
+++ b/doc/html/classMoveit__robot__inherit__graph.md5
@@ -0,0 +1 @@
+cd1c4d20ed992ad280303fafdbc56a79
\ No newline at end of file
diff --git a/doc/html/classMoveit__robot__inherit__graph.png b/doc/html/classMoveit__robot__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..317f332ac77b06bc5341d67bbf47b55433392e35
Binary files /dev/null and b/doc/html/classMoveit__robot__inherit__graph.png differ
diff --git a/doc/html/classPanda__decorator-members.html b/doc/html/classPanda__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ed5439e742975c37c390cc4c621e1b3136547c57
--- /dev/null
+++ b/doc/html/classPanda__decorator-members.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Panda_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classPanda__decorator.html">Panda_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a>(std::unique_ptr&lt; Abstract_robot &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;b) override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">grasp_map_generator_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">notify</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator</a>(std::unique_ptr&lt; Abstract_robot &gt; next)</td><td class="entry"><a class="el" href="classPanda__decorator.html">Panda_decorator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">robot_root_bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">root_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">Abstract_robot::size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">spezifie_robot_groups</a>() override</td><td class="entry"><a class="el" href="classPanda__decorator.html">Panda_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">spezifie_root_bounds</a>() override</td><td class="entry"><a class="el" href="classPanda__decorator.html">Panda_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td><td class="entry"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classPanda__decorator.html b/doc/html/classPanda__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..2773abadf3d1b7da090762f56f0d6789f55de322
--- /dev/null
+++ b/doc/html/classPanda__decorator.html
@@ -0,0 +1,243 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Panda_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classPanda__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Panda_decorator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="panda__decorator_8h_source.html">panda_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Panda_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classPanda__decorator__inherit__graph.png" border="0" usemap="#Panda__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Panda__decorator_inherit__map" id="Panda__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" href="classAbstract__robot__decorator.html" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="40,5,157,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa06d746a0cb43e4f30780289f606e5cb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt; <a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>)</td></tr>
+<tr class="separator:aa06d746a0cb43e4f30780289f606e5cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac84d81aaf6ba3bf7c251886ad73c48e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">spezifie_robot_groups</a> () override</td></tr>
+<tr class="separator:ac84d81aaf6ba3bf7c251886ad73c48e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09b74248a99c3ce02dc909a3871bb876"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">spezifie_root_bounds</a> () override</td></tr>
+<tr class="separator:a09b74248a99c3ce02dc909a3871bb876"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__decorator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__decorator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td></tr>
+<tr class="memitem:a9049f28e67b6457114a2b575587de4d4 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt; <a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>)</td></tr>
+<tr class="separator:a9049f28e67b6457114a2b575587de4d4 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a889edd0d57abce0f6c2a6bc14bcbee6e inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">bounds</a> () override</td></tr>
+<tr class="separator:a889edd0d57abce0f6c2a6bc14bcbee6e inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0c58aab1a4758916e8b448f83b1eec7 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;b) override</td></tr>
+<tr class="separator:ad0c58aab1a4758916e8b448f83b1eec7 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93929b117f84e353f322d353ad762d61 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">name</a> () override</td></tr>
+<tr class="separator:a93929b117f84e353f322d353ad762d61 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea8ffc58bc7a4187d8d28440e4395174 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a> ()</td></tr>
+<tr class="separator:aea8ffc58bc7a4187d8d28440e4395174 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a1d6aa0f1bdeeabe95517b0408e0cf8 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">notify</a> () override</td></tr>
+<tr class="separator:a9a1d6aa0f1bdeeabe95517b0408e0cf8 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7c7ebc6cbf26f5e99649ffaabf7e419 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">robot_root_bounds</a> () override</td></tr>
+<tr class="separator:ae7c7ebc6cbf26f5e99649ffaabf7e419 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fdba4f8a000b15b7a367066b0d79910 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">root_tf</a> () override</td></tr>
+<tr class="separator:a7fdba4f8a000b15b7a367066b0d79910 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70a76cf36cdbe1179340b533b238151b inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">size</a> () override</td></tr>
+<tr class="separator:a70a76cf36cdbe1179340b533b238151b inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a2e4b619b74d083b4497af183948950 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">tf</a> () override</td></tr>
+<tr class="separator:a5a2e4b619b74d083b4497af183948950 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad725d88bfcce39d8e90c45b38b85e144 inherit pub_methods_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td></tr>
+<tr class="separator:ad725d88bfcce39d8e90c45b38b85e144 inherit pub_methods_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__decorator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__decorator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></td></tr>
+<tr class="memitem:a625e198b41f5965ac3fca6673d4039a7 inherit pro_attribs_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; MapGenerator &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">grasp_map_generator_</a></td></tr>
+<tr class="separator:a625e198b41f5965ac3fca6673d4039a7 inherit pro_attribs_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86429ab626717a96cd34de271bb75c5c inherit pro_attribs_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a></td></tr>
+<tr class="separator:a86429ab626717a96cd34de271bb75c5c inherit pro_attribs_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a586e264c1add89b1becf4e5d18964160 inherit pro_attribs_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">mgi_</a></td></tr>
+<tr class="separator:a586e264c1add89b1becf4e5d18964160 inherit pro_attribs_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bdb9eee650e25e17647b8626ae74c27 inherit pro_attribs_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a></td></tr>
+<tr class="separator:a9bdb9eee650e25e17647b8626ae74c27 inherit pro_attribs_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41ecd95589c9236d7fc82921276339c7 inherit pro_attribs_classAbstract__robot__decorator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a></td></tr>
+<tr class="separator:a41ecd95589c9236d7fc82921276339c7 inherit pro_attribs_classAbstract__robot__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="panda__decorator_8h_source.html#l00009">9</a> of file <a class="el" href="panda__decorator_8h_source.html">panda_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aa06d746a0cb43e4f30780289f606e5cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa06d746a0cb43e4f30780289f606e5cb">&#9670;&nbsp;</a></span>Panda_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Panda_decorator::Panda_decorator </td>
+          <td>(</td>
+          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classAbstract__robot.html">Abstract_robot</a> &gt;&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="panda__decorator_8cpp_source.html#l00004">4</a> of file <a class="el" href="panda__decorator_8cpp_source.html">panda_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac84d81aaf6ba3bf7c251886ad73c48e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac84d81aaf6ba3bf7c251886ad73c48e6">&#9670;&nbsp;</a></span>spezifie_robot_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Panda_decorator::spezifie_robot_groups </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">Abstract_robot_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panda__decorator_8cpp_source.html#l00023">23</a> of file <a class="el" href="panda__decorator_8cpp_source.html">panda_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a09b74248a99c3ce02dc909a3871bb876"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09b74248a99c3ce02dc909a3871bb876">&#9670;&nbsp;</a></span>spezifie_root_bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Panda_decorator::spezifie_root_bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">Abstract_robot_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panda__decorator_8cpp_source.html#l00014">14</a> of file <a class="el" href="panda__decorator_8cpp_source.html">panda_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="panda__decorator_8h_source.html">panda_decorator.h</a></li>
+<li><a class="el" href="panda__decorator_8cpp_source.html">panda_decorator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classPanda__decorator__inherit__graph.map b/doc/html/classPanda__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..b0958c6314b9e5e0437bdbddafefc36cb76c202a
--- /dev/null
+++ b/doc/html/classPanda__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Panda_decorator" name="Panda_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="33,155,164,181"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__decorator.html" title=" " alt="" coords="5,80,192,107"/>
+<area shape="rect" id="node3" href="$classAbstract__robot.html" title=" " alt="" coords="40,5,157,32"/>
+</map>
diff --git a/doc/html/classPanda__decorator__inherit__graph.md5 b/doc/html/classPanda__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..5998028b2d9df98eea818c3ccc9473caeb08d09d
--- /dev/null
+++ b/doc/html/classPanda__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+69c57a14867d26470763c0d0c2874305
\ No newline at end of file
diff --git a/doc/html/classPanda__decorator__inherit__graph.png b/doc/html/classPanda__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..75ad6f57e2f2f24874f851a4bcc28c782f9bc7b3
Binary files /dev/null and b/doc/html/classPanda__decorator__inherit__graph.png differ
diff --git a/doc/html/classPanel-members.html b/doc/html/classPanel-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ef8de84dfaf9f58e57a9c87e70729bc5952cd6cc
--- /dev/null
+++ b/doc/html/classPanel-members.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Panel Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classPanel.html">Panel</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a>(std::string str)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a>(tf2::Vector3 &amp;vec)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classPanel.html b/doc/html/classPanel.html
new file mode 100644
index 0000000000000000000000000000000000000000..a91d4eea6ac46f6980eb394a7dc2926debe486d2
--- /dev/null
+++ b/doc/html/classPanel.html
@@ -0,0 +1,355 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Panel Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classPanel-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Panel Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="panel_8h_source.html">panel.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Panel:</div>
+<div class="dyncontent">
+<div class="center"><img src="classPanel__inherit__graph.png" border="0" usemap="#Panel_inherit__map" alt="Inheritance graph"/></div>
+<map name="Panel_inherit__map" id="Panel_inherit__map">
+<area shape="rect" title=" " alt="" coords="94,80,153,107"/>
+<area shape="rect" href="classMoveit__panel.html" title=" " alt="" coords="5,155,116,181"/>
+<area shape="rect" href="classRviz__panel.html" title=" " alt="" coords="141,155,234,181"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="34,5,213,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af4477404926c93431f4c369d36e945d6"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a> () override</td></tr>
+<tr class="separator:af4477404926c93431f4c369d36e945d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc3a14b055ba9004fa5ebdb34cd5e583"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a> () override</td></tr>
+<tr class="separator:abc3a14b055ba9004fa5ebdb34cd5e583"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f673224275e5ecb0db4d778f93e0bda"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a> (std::string <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>)</td></tr>
+<tr class="separator:a2f673224275e5ecb0db4d778f93e0bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58081e744b584114f23b80c1f3cee22e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a> (std::string str)</td></tr>
+<tr class="separator:a58081e744b584114f23b80c1f3cee22e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af865f7bb6545e057fcb0a76fd774a497"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a> (tf2::Vector3 &amp;vec)</td></tr>
+<tr class="separator:af865f7bb6545e057fcb0a76fd774a497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6a63c29e5a5573b369482528c4b4818"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a> () override</td></tr>
+<tr class="separator:af6a63c29e5a5573b369482528c4b4818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a70a607d1521d4df2360891afd2106f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a2a70a607d1521d4df2360891afd2106f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa3899db59afd593ef4ec2eb343f71b7"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a> () override</td></tr>
+<tr class="separator:aaa3899db59afd593ef4ec2eb343f71b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00007">7</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a2f673224275e5ecb0db4d778f93e0bda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f673224275e5ecb0db4d778f93e0bda">&#9670;&nbsp;</a></span>Panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Panel::Panel </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="panel_8cpp_source.html#l00003">3</a> of file <a class="el" href="panel_8cpp_source.html">panel.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="af4477404926c93431f4c369d36e945d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4477404926c93431f4c369d36e945d6">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Panel::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00016">16</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="abc3a14b055ba9004fa5ebdb34cd5e583"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc3a14b055ba9004fa5ebdb34cd5e583">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Panel::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00018">18</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="a58081e744b584114f23b80c1f3cee22e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a58081e744b584114f23b80c1f3cee22e">&#9670;&nbsp;</a></span>set_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Panel::set_name </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>str</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00011">11</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="af865f7bb6545e057fcb0a76fd774a497"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af865f7bb6545e057fcb0a76fd774a497">&#9670;&nbsp;</a></span>set_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Panel::set_set </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00012">12</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="af6a63c29e5a5573b369482528c4b4818"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af6a63c29e5a5573b369482528c4b4818">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Panel::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00019">19</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="a2a70a607d1521d4df2360891afd2106f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a70a607d1521d4df2360891afd2106f">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Panel::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p>Reimplemented in <a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00014">14</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa3899db59afd593ef4ec2eb343f71b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa3899db59afd593ef4ec2eb343f71b7">&#9670;&nbsp;</a></span>world_tf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform&amp; Panel::world_tf </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="panel_8h_source.html#l00017">17</a> of file <a class="el" href="panel_8h_source.html">panel.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="panel_8h_source.html">panel.h</a></li>
+<li><a class="el" href="panel_8cpp_source.html">panel.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classPanel__inherit__graph.map b/doc/html/classPanel__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..9849e82dc6667873b72d980f840736f0077fc871
--- /dev/null
+++ b/doc/html/classPanel__inherit__graph.map
@@ -0,0 +1,6 @@
+<map id="Panel" name="Panel">
+<area shape="rect" id="node1" title=" " alt="" coords="94,80,153,107"/>
+<area shape="rect" id="node3" href="$classMoveit__panel.html" title=" " alt="" coords="5,155,116,181"/>
+<area shape="rect" id="node4" href="$classRviz__panel.html" title=" " alt="" coords="141,155,234,181"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element.html" title=" " alt="" coords="34,5,213,32"/>
+</map>
diff --git a/doc/html/classPanel__inherit__graph.md5 b/doc/html/classPanel__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e8834e8d9e70666d55a4354bfdd4b64b984ce530
--- /dev/null
+++ b/doc/html/classPanel__inherit__graph.md5
@@ -0,0 +1 @@
+034850b78863ce80095680bb86cf744f
\ No newline at end of file
diff --git a/doc/html/classPanel__inherit__graph.png b/doc/html/classPanel__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..d41f17355743636afba0a1a0266e41bfcc0ede9b
Binary files /dev/null and b/doc/html/classPanel__inherit__graph.png differ
diff --git a/doc/html/classRobot-members.html b/doc/html/classRobot-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..6a8812278cf61a2227088c53c93e2482abe41ccd
--- /dev/null
+++ b/doc/html/classRobot-members.html
@@ -0,0 +1,83 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Robot Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classRobot.html">Robot</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">add_coll_markers</a>(moveit_msgs::CollisionObject *marker)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a>(Robot *R)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">check_single_object_collision</a>(tf2::Transform &amp;obj, std::string &amp;str) override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">coll_markers</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>() override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a></td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a>(Abstract_robot_element *wd)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a>()</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a>(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(float deg)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(int i)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform &amp;t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3 &amp;s)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t)</td><td class="entry"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">workload_checker</a>(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td><td class="entry"><a class="el" href="classRobot.html">Robot</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRobot.html b/doc/html/classRobot.html
new file mode 100644
index 0000000000000000000000000000000000000000..d0deeb916099628987fc9a1da40b55cd3583b0aa
--- /dev/null
+++ b/doc/html/classRobot.html
@@ -0,0 +1,619 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Robot Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classRobot-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Robot Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="robot_8h_source.html">robot.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="classRobot__inherit__graph.png" border="0" usemap="#Robot_inherit__map" alt="Inheritance graph"/></div>
+<map name="Robot_inherit__map" id="Robot_inherit__map">
+<area shape="rect" title=" " alt="" coords="34,80,94,107"/>
+<area shape="rect" href="classMoveit__robot.html" title=" " alt="" coords="10,155,118,181"/>
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1a73b8eaedcdab4b7defcedd81f8c713"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a> ()</td></tr>
+<tr class="separator:a1a73b8eaedcdab4b7defcedd81f8c713"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab333a4150395873d947c791996171510"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">add_coll_markers</a> (moveit_msgs::CollisionObject *marker)</td></tr>
+<tr class="separator:ab333a4150395873d947c791996171510"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b60a38b7639a58095b3303052e4a801"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="separator:a0b60a38b7639a58095b3303052e4a801"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab57fc902b6e93336db5310abf05c8a92"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a> (<a class="el" href="classRobot.html">Robot</a> *R)</td></tr>
+<tr class="separator:ab57fc902b6e93336db5310abf05c8a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7bf74de30a186337b05cb05b74d0e73"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">check_single_object_collision</a> (tf2::Transform &amp;obj, std::string &amp;str) override</td></tr>
+<tr class="separator:ab7bf74de30a186337b05cb05b74d0e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39fda5c987efad9c391bf4ce236e271f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; moveit_msgs::CollisionObject * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">coll_markers</a> ()</td></tr>
+<tr class="separator:a39fda5c987efad9c391bf4ce236e271f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cec7ea9000ee388e058ba6bfbe7640d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a> ()</td></tr>
+<tr class="separator:a9cec7ea9000ee388e058ba6bfbe7640d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab95c43650b9596fc2e9bc374abeeadf6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a> () override</td></tr>
+<tr class="separator:ab95c43650b9596fc2e9bc374abeeadf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb6c8c47edbcc561f15b00d551a045e6"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a> ()</td></tr>
+<tr class="separator:aeb6c8c47edbcc561f15b00d551a045e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7eddff501a2c3a3d5feb6c2ec4b016e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *wd)</td></tr>
+<tr class="separator:a7eddff501a2c3a3d5feb6c2ec4b016e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af626880915da239eeb0793eb41ab7596"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a> ()</td></tr>
+<tr class="separator:af626880915da239eeb0793eb41ab7596"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ad9bc06ae12dedaf6eb97bc4398c34a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a0ad9bc06ae12dedaf6eb97bc4398c34a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e045dcd43e888a9e4cddc2a9e6abdc8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">workload_checker</a> (std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</td></tr>
+<tr class="separator:a7e045dcd43e888a9e4cddc2a9e6abdc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a> (std::string &amp;<a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:a704bd9522c6fdaff61cc7584ef20850c inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a> (std::string <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</td></tr>
+<tr class="separator:ac94e9d3520fdbcd027682226f4b0be8f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a> (tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</td></tr>
+<tr class="memdesc:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangle area calculator.  <a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">More...</a><br /></td></tr>
+<tr class="separator:a1402d06f3393679d585376716cc2a534 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a> ()</td></tr>
+<tr class="separator:a64ae098f7cadad8237e663658f038663 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52c63e180b0a31cd9b97b824eb1b5c22 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">bounds</a> ()=0</td></tr>
+<tr class="separator:a52c63e180b0a31cd9b97b824eb1b5c22 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a> ()</td></tr>
+<tr class="separator:ad7080256737d26f2d4499d848e8c854a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a5d8cd75f0aa634022f09d88066d313 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a1a5d8cd75f0aa634022f09d88066d313">name</a> ()=0</td></tr>
+<tr class="separator:a1a5d8cd75f0aa634022f09d88066d313 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a> ()</td></tr>
+<tr class="separator:a7befa194e7b39c8b9d60f1844f9d1a8b inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a> ()</td></tr>
+<tr class="separator:aef7449039e62cf8608dbd22222120289 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62093041e9154e06ed573a42a76cc778 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">robot_root_bounds</a> ()=0</td></tr>
+<tr class="separator:a62093041e9154e06ed573a42a76cc778 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a> ()</td></tr>
+<tr class="separator:af29a9894b43fc8124de65712414168f4 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7a230da2f4551f707557a4f5fa447ac inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">root_tf</a> ()=0</td></tr>
+<tr class="separator:af7a230da2f4551f707557a4f5fa447ac inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a> (float deg)</td></tr>
+<tr class="separator:a72694508ca6d5ada16236775402dd385 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a> (int i)</td></tr>
+<tr class="separator:a7f30d6f41a3f7cbdb9839c75b957b366 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a> (tf2::Transform &amp;t)</td></tr>
+<tr class="separator:ab27017c6039446502704b443df934a2d inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a> ()</td></tr>
+<tr class="separator:aa3bfc2c32585c42ca88f5fc1e663eb93 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13949665d4f8ac53aadc357883b301da inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a13949665d4f8ac53aadc357883b301da">size</a> ()=0</td></tr>
+<tr class="separator:a13949665d4f8ac53aadc357883b301da inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a> (tf2::Vector3 &amp;s)</td></tr>
+<tr class="separator:abd68b299ae1d193e2c4d5ce89a7a2c61 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a> ()</td></tr>
+<tr class="separator:a4d636b2de764243b145577db70637d63 inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3e4f92f97f4a55fe9cb7196024fe30a inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#ae3e4f92f97f4a55fe9cb7196024fe30a">tf</a> ()=0</td></tr>
+<tr class="separator:ae3e4f92f97f4a55fe9cb7196024fe30a inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a> (tf2::Vector3 t)</td></tr>
+<tr class="separator:a126e52a7696cf030f5697dd93439775f inherit pub_methods_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:aaeebeca358c747b158be2999664d4b6a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a></td></tr>
+<tr class="separator:aaeebeca358c747b158be2999664d4b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20984a642a92887a622d8e069884b8e8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; moveit_msgs::CollisionObject * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a></td></tr>
+<tr class="separator:a20984a642a92887a622d8e069884b8e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6821b81b167e8bffbeca4beedc8033f8"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a></td></tr>
+<tr class="separator:a6821b81b167e8bffbeca4beedc8033f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="memitem:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a></td></tr>
+<tr class="memdesc:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of table top surface.  <a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">More...</a><br /></td></tr>
+<tr class="separator:a28c13c43328a26f12659ff086d77394e inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a></td></tr>
+<tr class="memdesc:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of robot.  <a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">More...</a><br /></td></tr>
+<tr class="separator:a3dc156f9e7813fa5dfa0d9c8c7e7a36f inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::bitset&lt; 3 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a></td></tr>
+<tr class="separator:aae8fb853afa438433797b9cc5008f1f2 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a></td></tr>
+<tr class="memdesc:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bounds of robot arm as sub-region of table top.  <a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">More...</a><br /></td></tr>
+<tr class="separator:a6d8ed98b1820134733f8d1a42eaa00c4 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a></td></tr>
+<tr class="memdesc:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> root on table top.  <a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">More...</a><br /></td></tr>
+<tr class="separator:a598a8379918fbdaf44358be840f146b7 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a></td></tr>
+<tr class="memdesc:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of table.  <a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">More...</a><br /></td></tr>
+<tr class="separator:af92f5538f28fbe61687d70f15e84fb82 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a></td></tr>
+<tr class="memdesc:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pose of table.  <a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">More...</a><br /></td></tr>
+<tr class="separator:a854a3c8c740dcb60e0ee347fcd5447f6 inherit pro_attribs_classAbstract__robot"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00019">19</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a0ad9bc06ae12dedaf6eb97bc4398c34a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ad9bc06ae12dedaf6eb97bc4398c34a">&#9670;&nbsp;</a></span>Robot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Robot::Robot </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00027">27</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a1a73b8eaedcdab4b7defcedd81f8c713"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a73b8eaedcdab4b7defcedd81f8c713">&#9670;&nbsp;</a></span>access_fields()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt;&amp; Robot::access_fields </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00030">30</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ab333a4150395873d947c791996171510"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab333a4150395873d947c791996171510">&#9670;&nbsp;</a></span>add_coll_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::add_coll_markers </td>
+          <td>(</td>
+          <td class="paramtype">moveit_msgs::CollisionObject *&#160;</td>
+          <td class="paramname"><em>marker</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00032">32</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a0b60a38b7639a58095b3303052e4a801"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b60a38b7639a58095b3303052e4a801">&#9670;&nbsp;</a></span>area_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">float Robot::area_calculation </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>A</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>B</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>C</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00031">31</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab57fc902b6e93336db5310abf05c8a92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab57fc902b6e93336db5310abf05c8a92">&#9670;&nbsp;</a></span>check_robot_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Robot::check_robot_collision </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classRobot.html">Robot</a> *&#160;</td>
+          <td class="paramname"><em>R</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00130">130</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab7bf74de30a186337b05cb05b74d0e73"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7bf74de30a186337b05cb05b74d0e73">&#9670;&nbsp;</a></span>check_single_object_collision()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool Robot::check_single_object_collision </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>str</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00070">70</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a39fda5c987efad9c391bf4ce236e271f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a39fda5c987efad9c391bf4ce236e271f">&#9670;&nbsp;</a></span>coll_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;moveit_msgs::CollisionObject*&gt; Robot::coll_markers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00033">33</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a9cec7ea9000ee388e058ba6bfbe7640d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cec7ea9000ee388e058ba6bfbe7640d">&#9670;&nbsp;</a></span>generate_access_fields()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::generate_access_fields </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00003">3</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab95c43650b9596fc2e9bc374abeeadf6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab95c43650b9596fc2e9bc374abeeadf6">&#9670;&nbsp;</a></span>notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::notify </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00125">125</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aeb6c8c47edbcc561f15b00d551a045e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb6c8c47edbcc561f15b00d551a045e6">&#9670;&nbsp;</a></span>observers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt;&amp; Robot::observers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00029">29</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a7eddff501a2c3a3d5feb6c2ec4b016e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7eddff501a2c3a3d5feb6c2ec4b016e0">&#9670;&nbsp;</a></span>register_observers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::register_observers </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td>
+          <td class="paramname"><em>wd</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00182">182</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af626880915da239eeb0793eb41ab7596"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af626880915da239eeb0793eb41ab7596">&#9670;&nbsp;</a></span>reset()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::reset </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00118">118</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a7e045dcd43e888a9e4cddc2a9e6abdc8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e045dcd43e888a9e4cddc2a9e6abdc8">&#9670;&nbsp;</a></span>workload_checker()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot::workload_checker </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>count_vector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>obj</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot_8cpp_source.html#l00038">38</a> of file <a class="el" href="robot_8cpp_source.html">robot.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="aaeebeca358c747b158be2999664d4b6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaeebeca358c747b158be2999664d4b6a">&#9670;&nbsp;</a></span>access_fields_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt; Robot::access_fields_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00022">22</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a20984a642a92887a622d8e069884b8e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20984a642a92887a622d8e069884b8e8">&#9670;&nbsp;</a></span>coll_markers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;moveit_msgs::CollisionObject*&gt; Robot::coll_markers_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00023">23</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a6821b81b167e8bffbeca4beedc8033f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6821b81b167e8bffbeca4beedc8033f8">&#9670;&nbsp;</a></span>observers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>*&gt; Robot::observers_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot_8h_source.html#l00021">21</a> of file <a class="el" href="robot_8h_source.html">robot.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="robot_8h_source.html">robot.h</a></li>
+<li><a class="el" href="robot_8cpp_source.html">robot.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRobot__inherit__graph.map b/doc/html/classRobot__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..66de339bda9598f2a5c81d4b6a1c3062d87f76ba
--- /dev/null
+++ b/doc/html/classRobot__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Robot" name="Robot">
+<area shape="rect" id="node1" title=" " alt="" coords="34,80,94,107"/>
+<area shape="rect" id="node3" href="$classMoveit__robot.html" title=" " alt="" coords="10,155,118,181"/>
+<area shape="rect" id="node2" href="$classAbstract__robot.html" title=" " alt="" coords="5,5,123,32"/>
+</map>
diff --git a/doc/html/classRobot__inherit__graph.md5 b/doc/html/classRobot__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..259fe21df92a8b18be45b41d650728e0cdf487b5
--- /dev/null
+++ b/doc/html/classRobot__inherit__graph.md5
@@ -0,0 +1 @@
+4540e6148b48d5e5ecfa06e3670199db
\ No newline at end of file
diff --git a/doc/html/classRobot__inherit__graph.png b/doc/html/classRobot__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..aa4ed2ed84593f953b4e2fad7aacb74031e8e37c
Binary files /dev/null and b/doc/html/classRobot__inherit__graph.png differ
diff --git a/doc/html/classRobot__reader-members.html b/doc/html/classRobot__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..47856732780b8be5eb7136d49e2fdd3339a23e15
--- /dev/null
+++ b/doc/html/classRobot__reader-members.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Robot_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classRobot__reader.html">Robot_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">read</a>() override</td><td class="entry"><a class="el" href="classRobot__reader.html">Robot_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a>()</td><td class="entry"><a class="el" href="classRobot__reader.html">Robot_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a></td><td class="entry"><a class="el" href="classRobot__reader.html">Robot_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classRobot__reader.html">Robot_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">set_robot_data</a>(std::vector&lt; object_data &gt; &amp;robot_data)</td><td class="entry"><a class="el" href="classRobot__reader.html">Robot_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRobot__reader.html b/doc/html/classRobot__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..752b41676feea726a318ec4b225f10730a8f5de5
--- /dev/null
+++ b/doc/html/classRobot__reader.html
@@ -0,0 +1,255 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Robot_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classRobot__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Robot_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="classRobot.html">Robot</a> reader.  
+ <a href="classRobot__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Robot_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classRobot__reader__inherit__graph.png" border="0" usemap="#Robot__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Robot__reader_inherit__map" id="Robot__reader_inherit__map">
+<area shape="rect" title="Robot reader." alt="" coords="38,80,147,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2620c6e17656a19920d805e5583ea9f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">read</a> () override</td></tr>
+<tr class="memdesc:a2620c6e17656a19920d805e5583ea9f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">More...</a><br /></td></tr>
+<tr class="separator:a2620c6e17656a19920d805e5583ea9f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d02ccd998930e139a17ec4c7db40226"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a> ()</td></tr>
+<tr class="memdesc:a8d02ccd998930e139a17ec4c7db40226"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get robot data.  <a href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">More...</a><br /></td></tr>
+<tr class="separator:a8d02ccd998930e139a17ec4c7db40226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add641d9e981e357eb921ec42161fa692"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:add641d9e981e357eb921ec42161fa692"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> reader constructor.  <a href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">More...</a><br /></td></tr>
+<tr class="separator:add641d9e981e357eb921ec42161fa692"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5679bf167d87e00d4f9ca30fdc3fc503"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">set_robot_data</a> (std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt; &amp;<a class="el" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a>)</td></tr>
+<tr class="memdesc:a5679bf167d87e00d4f9ca30fdc3fc503"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set robot data.  <a href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">More...</a><br /></td></tr>
+<tr class="separator:a5679bf167d87e00d4f9ca30fdc3fc503"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a099c3894672f3bdfacb1e1c69f2d30a7"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a></td></tr>
+<tr class="memdesc:a099c3894672f3bdfacb1e1c69f2d30a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map of <a class="el" href="structobject__data.html">object_data</a> to robot.  <a href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">More...</a><br /></td></tr>
+<tr class="separator:a099c3894672f3bdfacb1e1c69f2d30a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p><a class="el" href="classRobot.html">Robot</a> reader. </p>
+<p>Reads size and pose data for robot </p>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8h_source.html#l00015">15</a> of file <a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="add641d9e981e357eb921ec42161fa692"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add641d9e981e357eb921ec42161fa692">&#9670;&nbsp;</a></span>Robot_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Robot_reader::Robot_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classRobot.html">Robot</a> reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8h_source.html#l00025">25</a> of file <a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a2620c6e17656a19920d805e5583ea9f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2620c6e17656a19920d805e5583ea9f5">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="robot__reader_8cpp_source.html">robot_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a8d02ccd998930e139a17ec4c7db40226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d02ccd998930e139a17ec4c7db40226">&#9670;&nbsp;</a></span>robot_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt; Robot_reader::robot_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get robot data. </p>
+<dl class="section return"><dt>Returns</dt><dd>Vector of object data </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8h_source.html#l00037">37</a> of file <a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a5679bf167d87e00d4f9ca30fdc3fc503"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5679bf167d87e00d4f9ca30fdc3fc503">&#9670;&nbsp;</a></span>set_robot_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Robot_reader::set_robot_data </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt; &amp;&#160;</td>
+          <td class="paramname"><em>robot_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set robot data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot_data</td><td>Vector of object data </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8h_source.html#l00031">31</a> of file <a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a099c3894672f3bdfacb1e1c69f2d30a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a099c3894672f3bdfacb1e1c69f2d30a7">&#9670;&nbsp;</a></span>robot_data_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt; Robot_reader::robot_data_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Map of <a class="el" href="structobject__data.html">object_data</a> to robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="robot__reader_8h_source.html#l00017">17</a> of file <a class="el" href="robot__reader_8h_source.html">robot_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="robot__reader_8h_source.html">robot_reader.h</a></li>
+<li><a class="el" href="robot__reader_8cpp_source.html">robot_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRobot__reader__inherit__graph.map b/doc/html/classRobot__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..d5def08199f2abb2947a2b4250f3ffb15044b19e
--- /dev/null
+++ b/doc/html/classRobot__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Robot_reader" name="Robot_reader">
+<area shape="rect" id="node1" title="Robot reader." alt="" coords="38,80,147,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classRobot__reader__inherit__graph.md5 b/doc/html/classRobot__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..408769b26250b0eb551fa51695d2450b6895c1c1
--- /dev/null
+++ b/doc/html/classRobot__reader__inherit__graph.md5
@@ -0,0 +1 @@
+d59102655c58f5ba25ff30726a71e839
\ No newline at end of file
diff --git a/doc/html/classRobot__reader__inherit__graph.png b/doc/html/classRobot__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..b503d84e486709b472185d2605366e3bfde773eb
Binary files /dev/null and b/doc/html/classRobot__reader__inherit__graph.png differ
diff --git a/doc/html/classRviz__panel-members.html b/doc/html/classRviz__panel-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ee728bde841fa7c5d422179ca42c16686c25108
--- /dev/null
+++ b/doc/html/classRviz__panel-members.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Rviz_panel Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classRviz__panel.html">Rviz_panel</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">marker</a>()</td><td class="entry"><a class="el" href="classRviz__panel.html">Rviz_panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a></td><td class="entry"><a class="el" href="classRviz__panel.html">Rviz_panel</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classRviz__panel.html">Rviz_panel</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a>(std::string str)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a>(tf2::Vector3 &amp;vec)</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classRviz__panel.html">Rviz_panel</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a>() override</td><td class="entry"><a class="el" href="classPanel.html">Panel</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRviz__panel.html b/doc/html/classRviz__panel.html
new file mode 100644
index 0000000000000000000000000000000000000000..730b12f1a635c980f68e8838a318998dab9883bd
--- /dev/null
+++ b/doc/html/classRviz__panel.html
@@ -0,0 +1,240 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Rviz_panel Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classRviz__panel-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Rviz_panel Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rviz__panel_8h_source.html">rviz_panel.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Rviz_panel:</div>
+<div class="dyncontent">
+<div class="center"><img src="classRviz__panel__inherit__graph.png" border="0" usemap="#Rviz__panel_inherit__map" alt="Inheritance graph"/></div>
+<map name="Rviz__panel_inherit__map" id="Rviz__panel_inherit__map">
+<area shape="rect" title=" " alt="" coords="48,155,141,181"/>
+<area shape="rect" href="classPanel.html" title=" " alt="" coords="65,80,124,107"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac2665ca36d02e328703514b188a07cfc"><td class="memItemLeft" align="right" valign="top">visualization_msgs::Marker &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">marker</a> ()</td></tr>
+<tr class="separator:ac2665ca36d02e328703514b188a07cfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e4b8809f51ef3e8a552f557c067d3d7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel</a> (std::string <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>)</td></tr>
+<tr class="separator:a9e4b8809f51ef3e8a552f557c067d3d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2da4da9105d8662c0f7cb3409bb36e43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a2da4da9105d8662c0f7cb3409bb36e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classPanel"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classPanel')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classPanel.html">Panel</a></td></tr>
+<tr class="memitem:af4477404926c93431f4c369d36e945d6 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a> () override</td></tr>
+<tr class="separator:af4477404926c93431f4c369d36e945d6 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc3a14b055ba9004fa5ebdb34cd5e583 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a> () override</td></tr>
+<tr class="separator:abc3a14b055ba9004fa5ebdb34cd5e583 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f673224275e5ecb0db4d778f93e0bda inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a> (std::string <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>)</td></tr>
+<tr class="separator:a2f673224275e5ecb0db4d778f93e0bda inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58081e744b584114f23b80c1f3cee22e inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a> (std::string str)</td></tr>
+<tr class="separator:a58081e744b584114f23b80c1f3cee22e inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af865f7bb6545e057fcb0a76fd774a497 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a> (tf2::Vector3 &amp;vec)</td></tr>
+<tr class="separator:af865f7bb6545e057fcb0a76fd774a497 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6a63c29e5a5573b369482528c4b4818 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a> () override</td></tr>
+<tr class="separator:af6a63c29e5a5573b369482528c4b4818 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa3899db59afd593ef4ec2eb343f71b7 inherit pub_methods_classPanel"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a> () override</td></tr>
+<tr class="separator:aaa3899db59afd593ef4ec2eb343f71b7 inherit pub_methods_classPanel"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a73b2f4c7b57f4d67e2b7f6b0b440ef8d"><td class="memItemLeft" align="right" valign="top">visualization_msgs::Marker&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a></td></tr>
+<tr class="separator:a73b2f4c7b57f4d67e2b7f6b0b440ef8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rviz__panel_8h_source.html#l00010">10</a> of file <a class="el" href="rviz__panel_8h_source.html">rviz_panel.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a9e4b8809f51ef3e8a552f557c067d3d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e4b8809f51ef3e8a552f557c067d3d7">&#9670;&nbsp;</a></span>Rviz_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Rviz_panel::Rviz_panel </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rviz__panel_8cpp_source.html#l00004">4</a> of file <a class="el" href="rviz__panel_8cpp_source.html">rviz_panel.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac2665ca36d02e328703514b188a07cfc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2665ca36d02e328703514b188a07cfc">&#9670;&nbsp;</a></span>marker()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::Marker&amp; Rviz_panel::marker </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rviz__panel_8h_source.html#l00018">18</a> of file <a class="el" href="rviz__panel_8h_source.html">rviz_panel.h</a>.</p>
+
+</div>
+</div>
+<a id="a2da4da9105d8662c0f7cb3409bb36e43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2da4da9105d8662c0f7cb3409bb36e43">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Rviz_panel::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="rviz__panel_8cpp_source.html#l00029">29</a> of file <a class="el" href="rviz__panel_8cpp_source.html">rviz_panel.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a73b2f4c7b57f4d67e2b7f6b0b440ef8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">&#9670;&nbsp;</a></span>marker_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::Marker Rviz_panel::marker_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rviz__panel_8h_source.html#l00012">12</a> of file <a class="el" href="rviz__panel_8h_source.html">rviz_panel.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="rviz__panel_8h_source.html">rviz_panel.h</a></li>
+<li><a class="el" href="rviz__panel_8cpp_source.html">rviz_panel.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classRviz__panel__inherit__graph.map b/doc/html/classRviz__panel__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..b3fc17e39754feb9665a717a8bfb10298ef6a077
--- /dev/null
+++ b/doc/html/classRviz__panel__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Rviz_panel" name="Rviz_panel">
+<area shape="rect" id="node1" title=" " alt="" coords="48,155,141,181"/>
+<area shape="rect" id="node2" href="$classPanel.html" title=" " alt="" coords="65,80,124,107"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classRviz__panel__inherit__graph.md5 b/doc/html/classRviz__panel__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d97d2799bc182f3e4a5f1ff00e74710a47770c9c
--- /dev/null
+++ b/doc/html/classRviz__panel__inherit__graph.md5
@@ -0,0 +1 @@
+c69b79aece179193b98a2d6f32c357ca
\ No newline at end of file
diff --git a/doc/html/classRviz__panel__inherit__graph.png b/doc/html/classRviz__panel__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..cc760e9f6c5c19fc7b5f14ac0f1a24845039e794
Binary files /dev/null and b/doc/html/classRviz__panel__inherit__graph.png differ
diff --git a/doc/html/classSimple__base-members.html b/doc/html/classSimple__base-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c616fe4d6bdb025a7d25bb07fce176b1877202d
--- /dev/null
+++ b/doc/html/classSimple__base-members.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Simple_base Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classSimple__base.html">Simple_base</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">base_calculation</a>() override</td><td class="entry"><a class="el" href="classSimple__base.html">Simple_base</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">create_pcl_box</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">implementation</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">inv_map</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">map</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">map_reader_</a></td><td class="entry"><a class="el" href="classSimple__base.html">Simple_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">set_implementation</a>(std::shared_ptr&lt; Abstract_base_implementation &gt; some_implememntation)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">set_inv_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">set_map</a>(std::vector&lt; tf2::Transform &gt; &amp;list)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">set_target_cloud</a>(std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">set_task_space</a>(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;s_trans)</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classSimple__base.html">Simple_base</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">target_cloud</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">task_space</a>()</td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a></td><td class="entry"><a class="el" href="classAbstract__base.html">Abstract_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">task_space_reader_</a></td><td class="entry"><a class="el" href="classSimple__base.html">Simple_base</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">write_task</a>(Abstract_robot *robot) override</td><td class="entry"><a class="el" href="classSimple__base.html">Simple_base</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classSimple__base.html b/doc/html/classSimple__base.html
new file mode 100644
index 0000000000000000000000000000000000000000..99e8578c5de69e96447c8d534d97b5a611bc1a57
--- /dev/null
+++ b/doc/html/classSimple__base.html
@@ -0,0 +1,297 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Simple_base Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classSimple__base-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Simple_base Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>refiend base abstraction  
+ <a href="classSimple__base.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="simple__base_8h_source.html">simple_base.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Simple_base:</div>
+<div class="dyncontent">
+<div class="center"><img src="classSimple__base__inherit__graph.png" border="0" usemap="#Simple__base_inherit__map" alt="Inheritance graph"/></div>
+<map name="Simple__base_inherit__map" id="Simple__base_inherit__map">
+<area shape="rect" title="refiend base abstraction" alt="" coords="10,80,115,107"/>
+<area shape="rect" href="classAbstract__base.html" title="Abstract base class." alt="" coords="5,5,120,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a42768a7c6fcee691bb1699e08ead3ef6"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">base_calculation</a> () override</td></tr>
+<tr class="memdesc:a42768a7c6fcee691bb1699e08ead3ef6"><td class="mdescLeft">&#160;</td><td class="mdescRight">refined Template methode  <a href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">More...</a><br /></td></tr>
+<tr class="separator:a42768a7c6fcee691bb1699e08ead3ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81f95918750e1644484cbce9f41fd24e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a81f95918750e1644484cbce9f41fd24e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple base constructor.  <a href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">More...</a><br /></td></tr>
+<tr class="separator:a81f95918750e1644484cbce9f41fd24e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a095701db18bbccae201b96121b962e81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">write_task</a> (<a class="el" href="classAbstract__robot.html">Abstract_robot</a> *robot) override</td></tr>
+<tr class="memdesc:a095701db18bbccae201b96121b962e81"><td class="mdescLeft">&#160;</td><td class="mdescRight">write trask  <a href="classSimple__base.html#a095701db18bbccae201b96121b962e81">More...</a><br /></td></tr>
+<tr class="separator:a095701db18bbccae201b96121b962e81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__base')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__base.html">Abstract_base</a></td></tr>
+<tr class="memitem:a68300edaeff45edafe777bc4f7be2433 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a68300edaeff45edafe777bc4f7be2433 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base constructor.  <a href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">More...</a><br /></td></tr>
+<tr class="separator:a68300edaeff45edafe777bc4f7be2433 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fe29f317aeb7337c2eaeaefdc1d1ba9 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">implementation</a> ()</td></tr>
+<tr class="memdesc:a9fe29f317aeb7337c2eaeaefdc1d1ba9 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get used implementation.  <a href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">More...</a><br /></td></tr>
+<tr class="separator:a9fe29f317aeb7337c2eaeaefdc1d1ba9 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebb83168a14d660a024240bfaad70a80 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">inv_map</a> ()</td></tr>
+<tr class="memdesc:aebb83168a14d660a024240bfaad70a80 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get inverse map structure.  <a href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">More...</a><br /></td></tr>
+<tr class="separator:aebb83168a14d660a024240bfaad70a80 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a16c06aa3591c4daa7872dd0a1510d8 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">map</a> ()</td></tr>
+<tr class="memdesc:a0a16c06aa3591c4daa7872dd0a1510d8 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get map structure.  <a href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">More...</a><br /></td></tr>
+<tr class="separator:a0a16c06aa3591c4daa7872dd0a1510d8 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae41eb0b9891cdcfca4ae7df8234a9113 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">set_implementation</a> (std::shared_ptr&lt; <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> &gt; some_implememntation)</td></tr>
+<tr class="memdesc:ae41eb0b9891cdcfca4ae7df8234a9113 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set used implementation.  <a href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">More...</a><br /></td></tr>
+<tr class="separator:ae41eb0b9891cdcfca4ae7df8234a9113 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12b49689227a6dd6d0aa55fe273dfae2 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">set_inv_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="memdesc:a12b49689227a6dd6d0aa55fe273dfae2 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set inverse map structure.  <a href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">More...</a><br /></td></tr>
+<tr class="separator:a12b49689227a6dd6d0aa55fe273dfae2 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac83e7d3257c5cadc3285a90801f7a479 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">set_map</a> (std::vector&lt; tf2::Transform &gt; &amp;list)</td></tr>
+<tr class="memdesc:ac83e7d3257c5cadc3285a90801f7a479 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set map structure.  <a href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">More...</a><br /></td></tr>
+<tr class="separator:ac83e7d3257c5cadc3285a90801f7a479 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65784b6507975934712e2509e237680a inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">set_target_cloud</a> (std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt;&gt; &amp;cloud)</td></tr>
+<tr class="memdesc:a65784b6507975934712e2509e237680a inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set task cloud.  <a href="classAbstract__base.html#a65784b6507975934712e2509e237680a">More...</a><br /></td></tr>
+<tr class="separator:a65784b6507975934712e2509e237680a inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2031dc21ac6416978f9fe854449287e inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">set_task_space</a> (std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;s_trans)</td></tr>
+<tr class="memdesc:ae2031dc21ac6416978f9fe854449287e inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set task space.  <a href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">More...</a><br /></td></tr>
+<tr class="separator:ae2031dc21ac6416978f9fe854449287e inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7c57b1ac4fb42ab400c0fc08e9aff61 inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">target_cloud</a> ()</td></tr>
+<tr class="memdesc:ab7c57b1ac4fb42ab400c0fc08e9aff61 inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get task cloud.  <a href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">More...</a><br /></td></tr>
+<tr class="separator:ab7c57b1ac4fb42ab400c0fc08e9aff61 inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b63750f9b890cf99f9187624cc97be inherit pub_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">task_space</a> ()</td></tr>
+<tr class="memdesc:ad4b63750f9b890cf99f9187624cc97be inherit pub_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get task space.  <a href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">More...</a><br /></td></tr>
+<tr class="separator:ad4b63750f9b890cf99f9187624cc97be inherit pub_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:aca05b7bb4f422425e21872198598b6c5"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classMap__reader.html">Map_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">map_reader_</a></td></tr>
+<tr class="separator:aca05b7bb4f422425e21872198598b6c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0eceb0eb9276b9289bfa10c88254ce7e"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classTs__reader.html">Ts_reader</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">task_space_reader_</a></td></tr>
+<tr class="separator:a0eceb0eb9276b9289bfa10c88254ce7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__base"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__base')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__base.html">Abstract_base</a></td></tr>
+<tr class="memitem:ab73fdbf60e0d79d8ba4eeca3a894e39e inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a></td></tr>
+<tr class="memdesc:ab73fdbf60e0d79d8ba4eeca3a894e39e inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">refined implementation  <a href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">More...</a><br /></td></tr>
+<tr class="separator:ab73fdbf60e0d79d8ba4eeca3a894e39e inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b80b83e10a75f0421594e46c9b49381 inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a></td></tr>
+<tr class="memdesc:a9b80b83e10a75f0421594e46c9b49381 inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inversion of reachability map structure.  <a href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">More...</a><br /></td></tr>
+<tr class="separator:a9b80b83e10a75f0421594e46c9b49381 inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a589f01126eab356919d97480e30b17ab inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a></td></tr>
+<tr class="memdesc:a589f01126eab356919d97480e30b17ab inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reachability map structure of a robot.  <a href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">More...</a><br /></td></tr>
+<tr class="separator:a589f01126eab356919d97480e30b17ab inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54d21fd6fe1217c1b065c5b500e3e8d0 inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">nh_</a></td></tr>
+<tr class="memdesc:a54d21fd6fe1217c1b065c5b500e3e8d0 inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ros nodehandle object.  <a href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">More...</a><br /></td></tr>
+<tr class="separator:a54d21fd6fe1217c1b065c5b500e3e8d0 inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20a272f916415c6d30d6c3af3eb75f33 inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">target_cloud_</a></td></tr>
+<tr class="memdesc:a20a272f916415c6d30d6c3af3eb75f33 inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointcloud structure, mapped to robot.  <a href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">More...</a><br /></td></tr>
+<tr class="separator:a20a272f916415c6d30d6c3af3eb75f33 inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c32441b38f2cb24388e8d98fd8fe2bc inherit pro_attribs_classAbstract__base"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a></td></tr>
+<tr class="memdesc:a8c32441b38f2cb24388e8d98fd8fe2bc inherit pro_attribs_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drop-off locations with their grasp orientations, mapped to a robot.  <a href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">More...</a><br /></td></tr>
+<tr class="separator:a8c32441b38f2cb24388e8d98fd8fe2bc inherit pro_attribs_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_static_methods_classAbstract__base"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classAbstract__base')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classAbstract__base.html">Abstract_base</a></td></tr>
+<tr class="memitem:a4f721d18ef125fe286eeb7978fc499ba inherit pub_static_methods_classAbstract__base"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; pcl::PointXYZ &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">create_pcl_box</a> ()</td></tr>
+<tr class="memdesc:a4f721d18ef125fe286eeb7978fc499ba inherit pub_static_methods_classAbstract__base"><td class="mdescLeft">&#160;</td><td class="mdescRight">box discretization  <a href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">More...</a><br /></td></tr>
+<tr class="separator:a4f721d18ef125fe286eeb7978fc499ba inherit pub_static_methods_classAbstract__base"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>refiend base abstraction </p>
+<p>A simple refined abstraction, which utilizes raeder objects to set upper member vaiables. </p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8h_source.html#l00026">26</a> of file <a class="el" href="simple__base_8h_source.html">simple_base.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a81f95918750e1644484cbce9f41fd24e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81f95918750e1644484cbce9f41fd24e">&#9670;&nbsp;</a></span>Simple_base()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Simple_base::Simple_base </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Simple base constructor. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>Ros nodehandle to interact with ros </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8cpp_source.html#l00004">4</a> of file <a class="el" href="simple__base_8cpp_source.html">simple_base.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a42768a7c6fcee691bb1699e08ead3ef6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42768a7c6fcee691bb1699e08ead3ef6">&#9670;&nbsp;</a></span>base_calculation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; Simple_base::base_calculation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>refined Template methode </p>
+<p>Overriden methide which calls necessary functions from implementation </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">var</td><td>store inversed reachability map data </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>map of base positions linked to robots </dd></dl>
+
+<p>Implements <a class="el" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">Abstract_base</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8cpp_source.html#l00020">20</a> of file <a class="el" href="simple__base_8cpp_source.html">simple_base.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a095701db18bbccae201b96121b962e81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a095701db18bbccae201b96121b962e81">&#9670;&nbsp;</a></span>write_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Simple_base::write_task </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot.html">Abstract_robot</a> *&#160;</td>
+          <td class="paramname"><em>robot</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>write trask </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">robot</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">Abstract_base</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8cpp_source.html#l00366">366</a> of file <a class="el" href="simple__base_8cpp_source.html">simple_base.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="aca05b7bb4f422425e21872198598b6c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca05b7bb4f422425e21872198598b6c5">&#9670;&nbsp;</a></span>map_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classMap__reader.html">Map_reader</a>&gt; Simple_base::map_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Reachability map reader object </p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8h_source.html#l00029">29</a> of file <a class="el" href="simple__base_8h_source.html">simple_base.h</a>.</p>
+
+</div>
+</div>
+<a id="a0eceb0eb9276b9289bfa10c88254ce7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0eceb0eb9276b9289bfa10c88254ce7e">&#9670;&nbsp;</a></span>task_space_reader_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt;<a class="el" href="classTs__reader.html">Ts_reader</a>&gt; Simple_base::task_space_reader_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Task space reader object </p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base_8h_source.html#l00028">28</a> of file <a class="el" href="simple__base_8h_source.html">simple_base.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="simple__base_8h_source.html">simple_base.h</a></li>
+<li><a class="el" href="simple__base_8cpp_source.html">simple_base.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classSimple__base__implementation-members.html b/doc/html/classSimple__base__implementation-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..41aa015b2366b2ccf601bc1ca33ec25ef5b89e8d
--- /dev/null
+++ b/doc/html/classSimple__base__implementation-members.html
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Simple_base_implementation Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">inv_map_creation</a>(std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space) override</td><td class="entry"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">set_grasp_orientations</a>(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var) override</td><td class="entry"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">~Abstract_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">~Simple_base_implementation</a>()=default</td><td class="entry"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classSimple__base__implementation.html b/doc/html/classSimple__base__implementation.html
new file mode 100644
index 0000000000000000000000000000000000000000..f950387ac3ef0c68aacdbed513f7a4c8358ec0ba
--- /dev/null
+++ b/doc/html/classSimple__base__implementation.html
@@ -0,0 +1,232 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Simple_base_implementation Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classSimple__base__implementation-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Simple_base_implementation Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>refined base implementation  
+ <a href="classSimple__base__implementation.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="simple__base__implementation_8h_source.html">simple_base_implementation.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Simple_base_implementation:</div>
+<div class="dyncontent">
+<div class="center"><img src="classSimple__base__implementation__inherit__graph.png" border="0" usemap="#Simple__base__implementation_inherit__map" alt="Inheritance graph"/></div>
+<map name="Simple__base__implementation_inherit__map" id="Simple__base__implementation_inherit__map">
+<area shape="rect" title="refined base implementation" alt="" coords="10,80,226,107"/>
+<area shape="rect" href="classAbstract__base__implementation.html" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aaa52f0dfe523e71039f06c4a9d527b23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">inv_map_creation</a> (std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space) override</td></tr>
+<tr class="memdesc:aaa52f0dfe523e71039f06c4a9d527b23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create inversed reachability map.  <a href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">More...</a><br /></td></tr>
+<tr class="separator:aaa52f0dfe523e71039f06c4a9d527b23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58568c1809b8d1e7d6d66ce09c5f1974"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">set_grasp_orientations</a> (std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var) override</td></tr>
+<tr class="memdesc:a58568c1809b8d1e7d6d66ce09c5f1974"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store grasp orientations as endeffector transforms.  <a href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">More...</a><br /></td></tr>
+<tr class="separator:a58568c1809b8d1e7d6d66ce09c5f1974"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a434b134fd5a340a5fae0e2393e250462"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:a434b134fd5a340a5fae0e2393e250462"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default simple base implementation constructor.  <a href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">More...</a><br /></td></tr>
+<tr class="separator:a434b134fd5a340a5fae0e2393e250462"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad027ee9cbdd95ec53b31369ca86e208d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">~Simple_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:ad027ee9cbdd95ec53b31369ca86e208d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default simple base implementation destructor.  <a href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">More...</a><br /></td></tr>
+<tr class="separator:ad027ee9cbdd95ec53b31369ca86e208d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__base__implementation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__base__implementation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a></td></tr>
+<tr class="memitem:aefda2aa1684b1d8f5db48e999db2e05b inherit pub_methods_classAbstract__base__implementation"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:aefda2aa1684b1d8f5db48e999db2e05b inherit pub_methods_classAbstract__base__implementation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base implementation default constructor.  <a href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">More...</a><br /></td></tr>
+<tr class="separator:aefda2aa1684b1d8f5db48e999db2e05b inherit pub_methods_classAbstract__base__implementation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e51334938ee2afa88fe37b6e9b75690 inherit pub_methods_classAbstract__base__implementation"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">~Abstract_base_implementation</a> ()=default</td></tr>
+<tr class="memdesc:a7e51334938ee2afa88fe37b6e9b75690 inherit pub_methods_classAbstract__base__implementation"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract base implementation default destructor.  <a href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">More...</a><br /></td></tr>
+<tr class="separator:a7e51334938ee2afa88fe37b6e9b75690 inherit pub_methods_classAbstract__base__implementation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>refined base implementation </p>
+<p>generel base calculation approach </p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base__implementation_8h_source.html#l00012">12</a> of file <a class="el" href="simple__base__implementation_8h_source.html">simple_base_implementation.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a434b134fd5a340a5fae0e2393e250462"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a434b134fd5a340a5fae0e2393e250462">&#9670;&nbsp;</a></span>Simple_base_implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Simple_base_implementation::Simple_base_implementation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Default simple base implementation constructor. </p>
+
+</div>
+</div>
+<a id="ad027ee9cbdd95ec53b31369ca86e208d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad027ee9cbdd95ec53b31369ca86e208d">&#9670;&nbsp;</a></span>~Simple_base_implementation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Simple_base_implementation::~Simple_base_implementation </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Default simple base implementation destructor. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aaa52f0dfe523e71039f06c4a9d527b23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa52f0dfe523e71039f06c4a9d527b23">&#9670;&nbsp;</a></span>inv_map_creation()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Simple_base_implementation::inv_map_creation </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>map</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td>
+          <td class="paramname"><em>inv_map</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>task_space</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Create inversed reachability map. </p>
+<p>Creating inversed reachability map by inverting reachability map if grasp orientations match reachability map entries </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">map</td><td>store inversed reachability map data </td></tr>
+    <tr><td class="paramname">inv_map</td><td>store inversed reachability map data </td></tr>
+    <tr><td class="paramname">task_space</td><td>store inversed reachability map data </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">Abstract_base_implementation</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base__implementation_8cpp_source.html#l00016">16</a> of file <a class="el" href="simple__base__implementation_8cpp_source.html">simple_base_implementation.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a58568c1809b8d1e7d6d66ce09c5f1974"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a58568c1809b8d1e7d6d66ce09c5f1974">&#9670;&nbsp;</a></span>set_grasp_orientations()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Simple_base_implementation::set_grasp_orientations </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; std::pair&lt; <a class="el" href="structobject__data.html">object_data</a>, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>var</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Store grasp orientations as endeffector transforms. </p>
+<p>The 5 most basic Orientatations (x, -x, y, -y, z) for all graspable objects </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">var</td><td>manipulate grasp orienattions mapped to object and robot </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">Abstract_base_implementation</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="simple__base__implementation_8cpp_source.html#l00003">3</a> of file <a class="el" href="simple__base__implementation_8cpp_source.html">simple_base_implementation.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="simple__base__implementation_8h_source.html">simple_base_implementation.h</a></li>
+<li><a class="el" href="simple__base__implementation_8cpp_source.html">simple_base_implementation.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classSimple__base__implementation__inherit__graph.map b/doc/html/classSimple__base__implementation__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..c90611b554ee84810f435d3dd90360a24f643959
--- /dev/null
+++ b/doc/html/classSimple__base__implementation__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Simple_base_implementation" name="Simple_base_implementation">
+<area shape="rect" id="node1" title="refined base implementation" alt="" coords="10,80,226,107"/>
+<area shape="rect" id="node2" href="$classAbstract__base__implementation.html" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+</map>
diff --git a/doc/html/classSimple__base__implementation__inherit__graph.md5 b/doc/html/classSimple__base__implementation__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9345726ead4d7acfffcfa1576da99604146695ea
--- /dev/null
+++ b/doc/html/classSimple__base__implementation__inherit__graph.md5
@@ -0,0 +1 @@
+3fc8c6b57f246332f751159eae1ec347
\ No newline at end of file
diff --git a/doc/html/classSimple__base__implementation__inherit__graph.png b/doc/html/classSimple__base__implementation__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..0a32142ce2182c58286ff489ce34001a23c8f431
Binary files /dev/null and b/doc/html/classSimple__base__implementation__inherit__graph.png differ
diff --git a/doc/html/classSimple__base__inherit__graph.map b/doc/html/classSimple__base__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..f4456a24364c97f1fadb37758e7fc8e1bb495127
--- /dev/null
+++ b/doc/html/classSimple__base__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Simple_base" name="Simple_base">
+<area shape="rect" id="node1" title="refiend base abstraction" alt="" coords="10,80,115,107"/>
+<area shape="rect" id="node2" href="$classAbstract__base.html" title="Abstract base class." alt="" coords="5,5,120,32"/>
+</map>
diff --git a/doc/html/classSimple__base__inherit__graph.md5 b/doc/html/classSimple__base__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e57dfc4f6410e3388d7a6ec639eeb76b334d1eaa
--- /dev/null
+++ b/doc/html/classSimple__base__inherit__graph.md5
@@ -0,0 +1 @@
+d0147cb39b7ed907c0bab47889d14488
\ No newline at end of file
diff --git a/doc/html/classSimple__base__inherit__graph.png b/doc/html/classSimple__base__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..f6e5034ad55c9190b94ec356567c147212f30435
Binary files /dev/null and b/doc/html/classSimple__base__inherit__graph.png differ
diff --git a/doc/html/classTask__space__reader-members.html b/doc/html/classTask__space__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..f53637a05bf0192300de281fa0c39996c481c9cd
--- /dev/null
+++ b/doc/html/classTask__space__reader-members.html
@@ -0,0 +1,41 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Task_space_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classTask__space__reader.html">Task_space_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">read</a>() override</td><td class="entry"><a class="el" href="classTask__space__reader.html">Task_space_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classTask__space__reader.html">Task_space_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classTask__space__reader.html b/doc/html/classTask__space__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..ae1ab1bd4b5cd22adf3f160ba4f820ae2728242c
--- /dev/null
+++ b/doc/html/classTask__space__reader.html
@@ -0,0 +1,152 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Task_space_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classTask__space__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Task_space_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Task space reader.  
+ <a href="classTask__space__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="task__space__reader_8h_source.html">task_space_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Task_space_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classTask__space__reader__inherit__graph.png" border="0" usemap="#Task__space__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Task__space__reader_inherit__map" id="Task__space__reader_inherit__map">
+<area shape="rect" title="Task space reader." alt="" coords="20,80,165,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:adc53046a1920b11614bc9e0532475f94"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">read</a> () override</td></tr>
+<tr class="memdesc:adc53046a1920b11614bc9e0532475f94"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">More...</a><br /></td></tr>
+<tr class="separator:adc53046a1920b11614bc9e0532475f94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac522966d855d5e4f097265945d60456c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:ac522966d855d5e4f097265945d60456c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task space reader constructor.  <a href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">More...</a><br /></td></tr>
+<tr class="separator:ac522966d855d5e4f097265945d60456c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Task space reader. </p>
+<p>Reads task space information an writes them into file </p>
+
+<p class="definition">Definition at line <a class="el" href="task__space__reader_8h_source.html#l00015">15</a> of file <a class="el" href="task__space__reader_8h_source.html">task_space_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ac522966d855d5e4f097265945d60456c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac522966d855d5e4f097265945d60456c">&#9670;&nbsp;</a></span>Task_space_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Task_space_reader::Task_space_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Task space reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="task__space__reader_8h_source.html#l00022">22</a> of file <a class="el" href="task__space__reader_8h_source.html">task_space_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="adc53046a1920b11614bc9e0532475f94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc53046a1920b11614bc9e0532475f94">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Task_space_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="task__space__reader_8cpp_source.html#l00004">4</a> of file <a class="el" href="task__space__reader_8cpp_source.html">task_space_reader.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="task__space__reader_8h_source.html">task_space_reader.h</a></li>
+<li><a class="el" href="task__space__reader_8cpp_source.html">task_space_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classTask__space__reader__inherit__graph.map b/doc/html/classTask__space__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..da236cfe95fb24d99a9da33d6040953b87c66f4f
--- /dev/null
+++ b/doc/html/classTask__space__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Task_space_reader" name="Task_space_reader">
+<area shape="rect" id="node1" title="Task space reader." alt="" coords="20,80,165,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classTask__space__reader__inherit__graph.md5 b/doc/html/classTask__space__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b04b61d5123b56c08ad49c74171b364e22811b83
--- /dev/null
+++ b/doc/html/classTask__space__reader__inherit__graph.md5
@@ -0,0 +1 @@
+5555b7e8f746494ec3c988e7fded809e
\ No newline at end of file
diff --git a/doc/html/classTask__space__reader__inherit__graph.png b/doc/html/classTask__space__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..3925827432ac62bfbce75ed66b870351e7086311
Binary files /dev/null and b/doc/html/classTask__space__reader__inherit__graph.png differ
diff --git a/doc/html/classTs__reader-members.html b/doc/html/classTs__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..209a1b8b61de45a909fdc9736e7481c486bb9072
--- /dev/null
+++ b/doc/html/classTs__reader-members.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Ts_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classTs__reader.html">Ts_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">drop_off_data</a>()</td><td class="entry"><a class="el" href="classTs__reader.html">Ts_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">drop_off_data_</a></td><td class="entry"><a class="el" href="classTs__reader.html">Ts_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">read</a>() override</td><td class="entry"><a class="el" href="classTs__reader.html">Ts_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">set_drop_off_data</a>(std::map&lt; const std::string, std::vector&lt; object_data &gt;&gt; &amp;dod)</td><td class="entry"><a class="el" href="classTs__reader.html">Ts_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classTs__reader.html">Ts_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classTs__reader.html b/doc/html/classTs__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..f02968ea43e5c50fbdc200a2bb18ed95867ac00f
--- /dev/null
+++ b/doc/html/classTs__reader.html
@@ -0,0 +1,255 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Ts_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classTs__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Ts_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>TS reader.  
+ <a href="classTs__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Ts_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classTs__reader__inherit__graph.png" border="0" usemap="#Ts__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Ts__reader_inherit__map" id="Ts__reader_inherit__map">
+<area shape="rect" title="TS reader." alt="" coords="51,80,135,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a53d3f559a9b1d43b6bedf321849a81fe"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">drop_off_data</a> ()</td></tr>
+<tr class="memdesc:a53d3f559a9b1d43b6bedf321849a81fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get drop off data.  <a href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">More...</a><br /></td></tr>
+<tr class="separator:a53d3f559a9b1d43b6bedf321849a81fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b724ab02280e36e71b3ac5515f2fed3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">read</a> () override</td></tr>
+<tr class="memdesc:a9b724ab02280e36e71b3ac5515f2fed3"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">More...</a><br /></td></tr>
+<tr class="separator:a9b724ab02280e36e71b3ac5515f2fed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae72a1b14426b9a5c4da570b5c4378c87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">set_drop_off_data</a> (std::map&lt; const std::string, std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;&gt; &amp;dod)</td></tr>
+<tr class="memdesc:ae72a1b14426b9a5c4da570b5c4378c87"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set drop off data.  <a href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">More...</a><br /></td></tr>
+<tr class="separator:ae72a1b14426b9a5c4da570b5c4378c87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9b8ee9df3fd4477bb56b3a7c41eb5e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:ad9b8ee9df3fd4477bb56b3a7c41eb5e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">TS reader constructor.  <a href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">More...</a><br /></td></tr>
+<tr class="separator:ad9b8ee9df3fd4477bb56b3a7c41eb5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a74d617259a32c10da34cf8a664e48799"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">drop_off_data_</a></td></tr>
+<tr class="memdesc:a74d617259a32c10da34cf8a664e48799"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map of drop off data to robot.  <a href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">More...</a><br /></td></tr>
+<tr class="separator:a74d617259a32c10da34cf8a664e48799"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>TS reader. </p>
+<p>Reads task space data </p>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8h_source.html#l00015">15</a> of file <a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ad9b8ee9df3fd4477bb56b3a7c41eb5e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">&#9670;&nbsp;</a></span>Ts_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Ts_reader::Ts_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>TS reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8h_source.html#l00025">25</a> of file <a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a53d3f559a9b1d43b6bedf321849a81fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53d3f559a9b1d43b6bedf321849a81fe">&#9670;&nbsp;</a></span>drop_off_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt; const std::string, std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt; &gt;&amp; Ts_reader::drop_off_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get drop off data. </p>
+<dl class="section return"><dt>Returns</dt><dd>Map of drop off data to robot </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8h_source.html#l00031">31</a> of file <a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a9b724ab02280e36e71b3ac5515f2fed3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b724ab02280e36e71b3ac5515f2fed3">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ts_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="ts__reader_8cpp_source.html">ts_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae72a1b14426b9a5c4da570b5c4378c87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae72a1b14426b9a5c4da570b5c4378c87">&#9670;&nbsp;</a></span>set_drop_off_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Ts_reader::set_drop_off_data </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>dod</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set drop off data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">dod</td><td>of drop off data to robot </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8h_source.html#l00037">37</a> of file <a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a74d617259a32c10da34cf8a664e48799"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74d617259a32c10da34cf8a664e48799">&#9670;&nbsp;</a></span>drop_off_data_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt; &gt; Ts_reader::drop_off_data_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Map of drop off data to robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="ts__reader_8h_source.html#l00017">17</a> of file <a class="el" href="ts__reader_8h_source.html">ts_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="ts__reader_8h_source.html">ts_reader.h</a></li>
+<li><a class="el" href="ts__reader_8cpp_source.html">ts_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classTs__reader__inherit__graph.map b/doc/html/classTs__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..4ceb5bbf04103be2cc8bb02cefa68af822fc7a7c
--- /dev/null
+++ b/doc/html/classTs__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Ts_reader" name="Ts_reader">
+<area shape="rect" id="node1" title="TS reader." alt="" coords="51,80,135,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classTs__reader__inherit__graph.md5 b/doc/html/classTs__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..21c827a96c145c2d1dd3ff82258bcd0653f18422
--- /dev/null
+++ b/doc/html/classTs__reader__inherit__graph.md5
@@ -0,0 +1 @@
+d7fe9d6e0ee88e335588b02e0e0bb748
\ No newline at end of file
diff --git a/doc/html/classTs__reader__inherit__graph.png b/doc/html/classTs__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..6857caf1af0d0a85fa91ce8c3dcb95103823dc20
Binary files /dev/null and b/doc/html/classTs__reader__inherit__graph.png differ
diff --git a/doc/html/classWing-members.html b/doc/html/classWing-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..e2fe1e2c81fc0589608bb156857cd9327e06b5ba
--- /dev/null
+++ b/doc/html/classWing-members.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Wing Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classWing.html">Wing</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a></td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>()</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a></td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing.html#a59974ceb515b29cab964aba4314a8885">set_name</a>(std::string str)</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">set_set</a>(tf2::Vector3 &amp;vec)</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>()</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a></td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing</a>(std::string name, tf2::Transform tf, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">world_tf</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">~Wing</a>()</td><td class="entry"><a class="el" href="classWing.html">Wing</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing.html b/doc/html/classWing.html
new file mode 100644
index 0000000000000000000000000000000000000000..f4700a191e3e9e3f7e15de243a283c6fe8a29136
--- /dev/null
+++ b/doc/html/classWing.html
@@ -0,0 +1,438 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Wing Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classWing-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Wing Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="wing_8h_source.html">wing.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Wing:</div>
+<div class="dyncontent">
+<div class="center"><img src="classWing__inherit__graph.png" border="0" usemap="#Wing_inherit__map" alt="Inheritance graph"/></div>
+<map name="Wing_inherit__map" id="Wing_inherit__map">
+<area shape="rect" title=" " alt="" coords="67,80,122,107"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad8bf499109ae520a7dcd19afd564ff7b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a> ()</td></tr>
+<tr class="separator:ad8bf499109ae520a7dcd19afd564ff7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dc2d8cffc9b50ff0a2333b68ea402cc"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a> ()</td></tr>
+<tr class="separator:a3dc2d8cffc9b50ff0a2333b68ea402cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59974ceb515b29cab964aba4314a8885"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a59974ceb515b29cab964aba4314a8885">set_name</a> (std::string str)</td></tr>
+<tr class="separator:a59974ceb515b29cab964aba4314a8885"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0765941cf4c23bc66b044d3583dd114"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">set_set</a> (tf2::Vector3 &amp;vec)</td></tr>
+<tr class="separator:ad0765941cf4c23bc66b044d3583dd114"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a166b6d0367d7218947e3b2321360c521"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a> ()</td></tr>
+<tr class="separator:a166b6d0367d7218947e3b2321360c521"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc898c53233c825c8af1a74d0165f25d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:afc898c53233c825c8af1a74d0165f25d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18f6b141738c6ed89fc115ee07a4d397"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing</a> (std::string <a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>, tf2::Transform tf, tf2::Vector3 <a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>)</td></tr>
+<tr class="separator:a18f6b141738c6ed89fc115ee07a4d397"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9e78ec3662b1308a0d8676f79afc975"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">~Wing</a> ()</td></tr>
+<tr class="separator:aa9e78ec3662b1308a0d8676f79afc975"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6886c5fcf4a701aaab12b93fef87e3a6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">virtual tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a6886c5fcf4a701aaab12b93fef87e3a6">world_tf</a> ()=0</td></tr>
+<tr class="separator:a6886c5fcf4a701aaab12b93fef87e3a6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a3f6648e53c9033078f940633fb93b10d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a></td></tr>
+<tr class="separator:a3f6648e53c9033078f940633fb93b10d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c6cf155019a6910abbffb089eac9e05"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a></td></tr>
+<tr class="separator:a6c6cf155019a6910abbffb089eac9e05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a895d92ca6fef5fdc5d2e60551199428c"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a></td></tr>
+<tr class="separator:a895d92ca6fef5fdc5d2e60551199428c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00007">7</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a18f6b141738c6ed89fc115ee07a4d397"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18f6b141738c6ed89fc115ee07a4d397">&#9670;&nbsp;</a></span>Wing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Wing::Wing </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Transform&#160;</td>
+          <td class="paramname"><em>tf</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">tf2::Vector3&#160;</td>
+          <td class="paramname"><em>size</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00014">14</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="aa9e78ec3662b1308a0d8676f79afc975"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9e78ec3662b1308a0d8676f79afc975">&#9670;&nbsp;</a></span>~Wing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual Wing::~Wing </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00021">21</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ad8bf499109ae520a7dcd19afd564ff7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8bf499109ae520a7dcd19afd564ff7b">&#9670;&nbsp;</a></span>bounds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt;&amp; Wing::bounds </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00028">28</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="a3dc2d8cffc9b50ff0a2333b68ea402cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3dc2d8cffc9b50ff0a2333b68ea402cc">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string&amp; Wing::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00023">23</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="a59974ceb515b29cab964aba4314a8885"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59974ceb515b29cab964aba4314a8885">&#9670;&nbsp;</a></span>set_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing::set_name </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>str</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00024">24</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="ad0765941cf4c23bc66b044d3583dd114"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0765941cf4c23bc66b044d3583dd114">&#9670;&nbsp;</a></span>set_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing::set_set </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Vector3 &amp;&#160;</td>
+          <td class="paramname"><em>vec</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00025">25</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="a166b6d0367d7218947e3b2321360c521"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a166b6d0367d7218947e3b2321360c521">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3&amp; Wing::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00027">27</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="afc898c53233c825c8af1a74d0165f25d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc898c53233c825c8af1a74d0165f25d">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00029">29</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a3f6648e53c9033078f940633fb93b10d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f6648e53c9033078f940633fb93b10d">&#9670;&nbsp;</a></span>bounds_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; Wing::bounds_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00011">11</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="a6c6cf155019a6910abbffb089eac9e05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c6cf155019a6910abbffb089eac9e05">&#9670;&nbsp;</a></span>name_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Wing::name_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00009">9</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<a id="a895d92ca6fef5fdc5d2e60551199428c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a895d92ca6fef5fdc5d2e60551199428c">&#9670;&nbsp;</a></span>size_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3 Wing::size_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing_8h_source.html#l00010">10</a> of file <a class="el" href="wing_8h_source.html">wing.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="wing_8h_source.html">wing.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__inherit__graph.map b/doc/html/classWing__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..151b737287f83efc51a7f434885a6de7f592e801
--- /dev/null
+++ b/doc/html/classWing__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Wing" name="Wing">
+<area shape="rect" id="node1" title=" " alt="" coords="67,80,122,107"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classWing__inherit__graph.md5 b/doc/html/classWing__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..99fcd4f88a5f6735e00bf937e874637bbcb2dd51
--- /dev/null
+++ b/doc/html/classWing__inherit__graph.md5
@@ -0,0 +1 @@
+44f6ce45cd928cfcfa7ee7335daaaa7a
\ No newline at end of file
diff --git a/doc/html/classWing__inherit__graph.png b/doc/html/classWing__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..5dacfb7d200a68651a7408594b18ecec57cd30ff
Binary files /dev/null and b/doc/html/classWing__inherit__graph.png differ
diff --git a/doc/html/classWing__moveit__decorator-members.html b/doc/html/classWing__moveit__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..427b2329702c9c3716f0484017a02f6288d13789
--- /dev/null
+++ b/doc/html/classWing__moveit__decorator-members.html
@@ -0,0 +1,70 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Wing_moveit_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">input_filter</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>()</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a></td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">output_filter</a>() override</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">set_markers</a>(moveit_msgs::CollisionObject *markers)</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__moveit__decorator.html b/doc/html/classWing__moveit__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f4014af2b413f6194073146c8754f699e606b45
--- /dev/null
+++ b/doc/html/classWing__moveit__decorator.html
@@ -0,0 +1,341 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Wing_moveit_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pri-attribs">Private Attributes</a> &#124;
+<a href="classWing__moveit__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Wing_moveit_decorator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Wing_moveit_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classWing__moveit__decorator__inherit__graph.png" border="0" usemap="#Wing__moveit__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Wing__moveit__decorator_inherit__map" id="Wing__moveit__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="6,169,183,196"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac35f08c723f54f3d5d8946fb4e252ab2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">input_filter</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:ac35f08c723f54f3d5d8946fb4e252ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94dee8fbe873155ed5ed8b65c6189d90"><td class="memItemLeft" align="right" valign="top">moveit_msgs::CollisionObject *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a> ()</td></tr>
+<tr class="separator:a94dee8fbe873155ed5ed8b65c6189d90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9654fdfeffcf5f1f1fd2f87b267c562b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">output_filter</a> () override</td></tr>
+<tr class="separator:a9654fdfeffcf5f1f1fd2f87b267c562b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9abb8884e7960d839647f77c78b27602"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">set_markers</a> (moveit_msgs::CollisionObject *<a class="el" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>)</td></tr>
+<tr class="separator:a9abb8884e7960d839647f77c78b27602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade982b05a137aa3f80b229f02211105e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:ade982b05a137aa3f80b229f02211105e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd889db54302763f1e578fc2c0b80677"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:acd889db54302763f1e578fc2c0b80677"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a> () override</td></tr>
+<tr class="separator:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a> ()=0</td></tr>
+<tr class="separator:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a> () override</td></tr>
+<tr class="separator:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a> ()</td></tr>
+<tr class="separator:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a> () override</td></tr>
+<tr class="separator:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> ()</td></tr>
+<tr class="separator:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a> () override</td></tr>
+<tr class="separator:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
+Private Attributes</h2></td></tr>
+<tr class="memitem:a0a10fa719ce7c2fc4d637f3b7efe2e6c"><td class="memItemLeft" align="right" valign="top">moveit_msgs::CollisionObject *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a> = new moveit_msgs::CollisionObject()</td></tr>
+<tr class="separator:a0a10fa719ce7c2fc4d637f3b7efe2e6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td></tr>
+<tr class="separator:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td></tr>
+<tr class="separator:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td></tr>
+<tr class="separator:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8h_source.html#l00013">13</a> of file <a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="acd889db54302763f1e578fc2c0b80677"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd889db54302763f1e578fc2c0b80677">&#9670;&nbsp;</a></span>Wing_moveit_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Wing_moveit_decorator::Wing_moveit_decorator </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8h_source.html#l00019">19</a> of file <a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac35f08c723f54f3d5d8946fb4e252ab2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac35f08c723f54f3d5d8946fb4e252ab2">&#9670;&nbsp;</a></span>input_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_moveit_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8cpp_source.html#l00008">8</a> of file <a class="el" href="wing__moveit__decorator_8cpp_source.html">wing_moveit_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a94dee8fbe873155ed5ed8b65c6189d90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94dee8fbe873155ed5ed8b65c6189d90">&#9670;&nbsp;</a></span>markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">moveit_msgs::CollisionObject* Wing_moveit_decorator::markers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8h_source.html#l00021">21</a> of file <a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="a9654fdfeffcf5f1f1fd2f87b267c562b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9654fdfeffcf5f1f1fd2f87b267c562b">&#9670;&nbsp;</a></span>output_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_moveit_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8cpp_source.html#l00010">10</a> of file <a class="el" href="wing__moveit__decorator_8cpp_source.html">wing_moveit_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9abb8884e7960d839647f77c78b27602"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9abb8884e7960d839647f77c78b27602">&#9670;&nbsp;</a></span>set_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_moveit_decorator::set_markers </td>
+          <td>(</td>
+          <td class="paramtype">moveit_msgs::CollisionObject *&#160;</td>
+          <td class="paramname"><em>markers</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8h_source.html#l00020">20</a> of file <a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ade982b05a137aa3f80b229f02211105e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade982b05a137aa3f80b229f02211105e">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_moveit_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8cpp_source.html#l00003">3</a> of file <a class="el" href="wing__moveit__decorator_8cpp_source.html">wing_moveit_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a0a10fa719ce7c2fc4d637f3b7efe2e6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a10fa719ce7c2fc4d637f3b7efe2e6c">&#9670;&nbsp;</a></span>markers_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">moveit_msgs::CollisionObject* Wing_moveit_decorator::markers_ = new moveit_msgs::CollisionObject()</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__moveit__decorator_8h_source.html#l00015">15</a> of file <a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="wing__moveit__decorator_8h_source.html">wing_moveit_decorator.h</a></li>
+<li><a class="el" href="wing__moveit__decorator_8cpp_source.html">wing_moveit_decorator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__moveit__decorator__inherit__graph.map b/doc/html/classWing__moveit__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..4b90d49e964e684ccee8b104d641e2e2c1e51e6d
--- /dev/null
+++ b/doc/html/classWing__moveit__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Wing_moveit_decorator" name="Wing_moveit_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="6,169,183,196"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classWing__moveit__decorator__inherit__graph.md5 b/doc/html/classWing__moveit__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8e3e326685e5b934063389377b1aa1196df0b1c2
--- /dev/null
+++ b/doc/html/classWing__moveit__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+a0a33d9751c8db26dc1324e2de415407
\ No newline at end of file
diff --git a/doc/html/classWing__moveit__decorator__inherit__graph.png b/doc/html/classWing__moveit__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..496b0c0bdcd0572804ab4dc66620f7da37c9f51a
Binary files /dev/null and b/doc/html/classWing__moveit__decorator__inherit__graph.png differ
diff --git a/doc/html/classWing__reader-members.html b/doc/html/classWing__reader-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..1a6c2959b6a746cfffd023baa1a1d4f5f3139fc5
--- /dev/null
+++ b/doc/html/classWing__reader-members.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Wing_reader Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classWing__reader.html">Wing_reader</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(XmlRpc::XmlRpcValue &amp;val)</td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td><td class="entry"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">read</a>() override</td><td class="entry"><a class="el" href="classWing__reader.html">Wing_reader</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">set_wing_data</a>(std::map&lt; const std::string, std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wing_data)</td><td class="entry"><a class="el" href="classWing__reader.html">Wing_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a>()</td><td class="entry"><a class="el" href="classWing__reader.html">Wing_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">wing_data_</a></td><td class="entry"><a class="el" href="classWing__reader.html">Wing_reader</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader</a>(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td><td class="entry"><a class="el" href="classWing__reader.html">Wing_reader</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__reader.html b/doc/html/classWing__reader.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b3a9d25ee184c0b370dc1dff8f27d01e717ad88
--- /dev/null
+++ b/doc/html/classWing__reader.html
@@ -0,0 +1,255 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Wing_reader Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classWing__reader-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Wing_reader Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="classWing.html">Wing</a> reader.  
+ <a href="classWing__reader.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Wing_reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="classWing__reader__inherit__graph.png" border="0" usemap="#Wing__reader_inherit__map" alt="Inheritance graph"/></div>
+<map name="Wing__reader_inherit__map" id="Wing__reader_inherit__map">
+<area shape="rect" title="Wing reader." alt="" coords="41,80,145,107"/>
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5176dcdf48c2f44bdab3cfedd6e94c4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">read</a> () override</td></tr>
+<tr class="memdesc:a5176dcdf48c2f44bdab3cfedd6e94c4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">read implementatin  <a href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">More...</a><br /></td></tr>
+<tr class="separator:a5176dcdf48c2f44bdab3cfedd6e94c4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e05444708c755a2aefe43a0bc8fb04a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">set_wing_data</a> (std::map&lt; const std::string, std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;<a class="el" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a>)</td></tr>
+<tr class="memdesc:a3e05444708c755a2aefe43a0bc8fb04a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set wing data.  <a href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">More...</a><br /></td></tr>
+<tr class="separator:a3e05444708c755a2aefe43a0bc8fb04a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a248e697daf6a744470b310338f790ebc"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a> ()</td></tr>
+<tr class="memdesc:a248e697daf6a744470b310338f790ebc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get wing data.  <a href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">More...</a><br /></td></tr>
+<tr class="separator:a248e697daf6a744470b310338f790ebc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98abb7d49525f6a3832bdd1a8d4e3e3c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a98abb7d49525f6a3832bdd1a8d4e3e3c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classWing.html">Wing</a> reader constructor.  <a href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">More...</a><br /></td></tr>
+<tr class="separator:a98abb7d49525f6a3832bdd1a8d4e3e3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a> (std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</td></tr>
+<tr class="memdesc:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract param reader constructor.  <a href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">More...</a><br /></td></tr>
+<tr class="separator:a734c0833347f6d686f280031b3219de0 inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a> (XmlRpc::XmlRpcValue &amp;val)</td></tr>
+<tr class="memdesc:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Xmlrpc parser.  <a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">More...</a><br /></td></tr>
+<tr class="separator:a107d1be3e232087e003820c9a924b2dd inherit pub_methods_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:af5dbd133afcbd8f2f929d94b93ac0e0b"><td class="memItemLeft" align="right" valign="top">std::map&lt; const std::string, std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">wing_data_</a></td></tr>
+<tr class="memdesc:af5dbd133afcbd8f2f929d94b93ac0e0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask and object data mapped to robot.  <a href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">More...</a><br /></td></tr>
+<tr class="separator:af5dbd133afcbd8f2f929d94b93ac0e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__param__reader"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__param__reader')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a></td></tr>
+<tr class="memitem:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a></td></tr>
+<tr class="memdesc:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">ROS Nodehandle.  <a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">More...</a><br /></td></tr>
+<tr class="separator:ac68dac5298b2c065773ba8412a134949 inherit pro_attribs_classAbstract__param__reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p><a class="el" href="classWing.html">Wing</a> reader. </p>
+<p>Reads panel data </p>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8h_source.html#l00014">14</a> of file <a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a98abb7d49525f6a3832bdd1a8d4e3e3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98abb7d49525f6a3832bdd1a8d4e3e3c">&#9670;&nbsp;</a></span>Wing_reader()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Wing_reader::Wing_reader </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="classWing.html">Wing</a> reader constructor. </p>
+<p>Calls pure virtual <a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c" title="read implementatin">read()</a> methode </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">d</td><td>ROS nodehandle </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8h_source.html#l00024">24</a> of file <a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a5176dcdf48c2f44bdab3cfedd6e94c4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5176dcdf48c2f44bdab3cfedd6e94c4c">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_reader::read </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>read implementatin </p>
+
+<p>Implements <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8cpp_source.html#l00003">3</a> of file <a class="el" href="wing__reader_8cpp_source.html">wing_reader.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3e05444708c755a2aefe43a0bc8fb04a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e05444708c755a2aefe43a0bc8fb04a">&#9670;&nbsp;</a></span>set_wing_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_reader::set_wing_data </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; const std::string, std::pair&lt; std::vector&lt; <a class="el" href="structobject__data.html">object_data</a> &gt;, int &gt;&gt; &amp;&#160;</td>
+          <td class="paramname"><em>wing_data</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Set wing data. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">wing_data</td><td>Mask and object data mapped to robot </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8h_source.html#l00030">30</a> of file <a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a248e697daf6a744470b310338f790ebc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a248e697daf6a744470b310338f790ebc">&#9670;&nbsp;</a></span>wing_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::pair&lt;std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt;, int&gt; &gt;&amp; Wing_reader::wing_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get wing data. </p>
+<dl class="section return"><dt>Returns</dt><dd>wing_data Mask and object data mapped to robot </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8h_source.html#l00036">36</a> of file <a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="af5dbd133afcbd8f2f929d94b93ac0e0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af5dbd133afcbd8f2f929d94b93ac0e0b">&#9670;&nbsp;</a></span>wing_data_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;const std::string, std::pair&lt;std::vector&lt;<a class="el" href="structobject__data.html">object_data</a>&gt;, int&gt; &gt; Wing_reader::wing_data_</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Mask and object data mapped to robot. </p>
+
+<p class="definition">Definition at line <a class="el" href="wing__reader_8h_source.html#l00016">16</a> of file <a class="el" href="wing__reader_8h_source.html">wing_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="wing__reader_8h_source.html">wing_reader.h</a></li>
+<li><a class="el" href="wing__reader_8cpp_source.html">wing_reader.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__reader__inherit__graph.map b/doc/html/classWing__reader__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..d67e0b2b829cabd1828684118d803bd92382e93c
--- /dev/null
+++ b/doc/html/classWing__reader__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="Wing_reader" name="Wing_reader">
+<area shape="rect" id="node1" title="Wing reader." alt="" coords="41,80,145,107"/>
+<area shape="rect" id="node2" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,5,180,32"/>
+</map>
diff --git a/doc/html/classWing__reader__inherit__graph.md5 b/doc/html/classWing__reader__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9f00c3bdd6e73fe830281f99ec587a740da3c45e
--- /dev/null
+++ b/doc/html/classWing__reader__inherit__graph.md5
@@ -0,0 +1 @@
+a322412d4e48dc019e063e1cd05a5fed
\ No newline at end of file
diff --git a/doc/html/classWing__reader__inherit__graph.png b/doc/html/classWing__reader__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..6fb74a4a3dd254660c772b1a3fe18b25b3588a55
Binary files /dev/null and b/doc/html/classWing__reader__inherit__graph.png differ
diff --git a/doc/html/classWing__rviz__decorator-members.html b/doc/html/classWing__rviz__decorator-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c416e42b92e10ef8be44dfc81e5ad2779815a54
--- /dev/null
+++ b/doc/html/classWing__rviz__decorator-members.html
@@ -0,0 +1,70 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Wing_rviz_decorator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>()=default</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string name, tf2::Vector3 size)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt; Abstract_robot_element &gt; next)</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">input_filter</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a>()=0</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a></td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>()</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">output_filter</a>() override</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">set_markers</a>(visualization_msgs::Marker *markers)</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform &amp;tf)</td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">update</a>(tf2::Transform &amp;tf) override</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator</a>(Abstract_robot_element *next)</td><td class="entry"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>() override</td><td class="entry"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td><td class="entry"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__rviz__decorator.html b/doc/html/classWing__rviz__decorator.html
new file mode 100644
index 0000000000000000000000000000000000000000..ab1c5292efda433e1048173053b52e11c4fae5e1
--- /dev/null
+++ b/doc/html/classWing__rviz__decorator.html
@@ -0,0 +1,341 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Wing_rviz_decorator Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pri-attribs">Private Attributes</a> &#124;
+<a href="classWing__rviz__decorator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">Wing_rviz_decorator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for Wing_rviz_decorator:</div>
+<div class="dyncontent">
+<div class="center"><img src="classWing__rviz__decorator__inherit__graph.png" border="0" usemap="#Wing__rviz__decorator_inherit__map" alt="Inheritance graph"/></div>
+<map name="Wing__rviz__decorator_inherit__map" id="Wing__rviz__decorator_inherit__map">
+<area shape="rect" title=" " alt="" coords="17,169,172,196"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1a96d6aa2f86b5b187b7a55a8c604722"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">input_filter</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:a1a96d6aa2f86b5b187b7a55a8c604722"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f27d708e22c72dae7ec90c2f1f699b2"><td class="memItemLeft" align="right" valign="top">visualization_msgs::Marker *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a> ()</td></tr>
+<tr class="separator:a7f27d708e22c72dae7ec90c2f1f699b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2a0e83684cdab21c225699fab4b56f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">output_filter</a> () override</td></tr>
+<tr class="separator:ac2a0e83684cdab21c225699fab4b56f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab14def4c2e63ce9036488b894e74c507"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">set_markers</a> (visualization_msgs::Marker *<a class="el" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>)</td></tr>
+<tr class="separator:ab14def4c2e63ce9036488b894e74c507"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5dce35a8439a2f1c5037cc3dc6d434e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:af5dce35a8439a2f1c5037cc3dc6d434e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13ffcd407511d8812150f26b9b257806"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a13ffcd407511d8812150f26b9b257806"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a> (<a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *<a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:ae8e0dfe6a805942ddc5bd8d335b279a7 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a> (std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt; <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)</td></tr>
+<tr class="separator:a2c76b8c0d4e487517e8c874e75613162 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a> () override</td></tr>
+<tr class="separator:ac06ca3833192af0e719c22419c07ccbb inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a> ()=0</td></tr>
+<tr class="separator:ae6a83bd61665cc4e3692143e84f091e8 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a> () override</td></tr>
+<tr class="separator:afa68bc27f679beb896722f0eebe6d719 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a> ()</td></tr>
+<tr class="separator:a87d8de36475ce19034a9728f545eb03e inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Vector3 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a> () override</td></tr>
+<tr class="separator:abe4aed220334766bd4ec903429006830 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a> (tf2::Transform &amp;tf) override</td></tr>
+<tr class="separator:addab3f179d202bea3da80887206c8048 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> ()</td></tr>
+<tr class="separator:a9138c650f2148d515802a89f079ace2f inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a> () override</td></tr>
+<tr class="separator:ad077cbfa7a43d1212b78cd61bcbf37a6 inherit pub_methods_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a> ()=default</td></tr>
+<tr class="separator:a2c9540782c6450c15aaa20c20b677a9a inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a> (tf2::Transform tf, std::string <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</td></tr>
+<tr class="separator:ab63f250226570c92077ef4555d6f5890 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:a19e094e1639e2c72ead481a3c6c9ec24 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a> ()</td></tr>
+<tr class="separator:ad3ee9aff6d4fb1e4e90775e943e65861 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a> (tf2::Transform tf)</td></tr>
+<tr class="separator:a12e6954b51765e18a7f0c2d8c4eca0c6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a> (tf2::Transform &amp;tf)</td></tr>
+<tr class="separator:aa7ee89ce290dd2e6408a9d2118af93f8 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a> ()</td></tr>
+<tr class="separator:a99d0cb9e273cdfb373d4c974529b1ad6 inherit pub_methods_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
+Private Attributes</h2></td></tr>
+<tr class="memitem:a9b7cdc7830647d8c6005414b2694cdf5"><td class="memItemLeft" align="right" valign="top">visualization_msgs::Marker *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a> = new visualization_msgs::Marker()</td></tr>
+<tr class="separator:a9b7cdc7830647d8c6005414b2694cdf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element__decorator"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element__decorator')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="memitem:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a></td></tr>
+<tr class="separator:ab7fe1d6234cc937bf72a2f951781329b inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a></td></tr>
+<tr class="separator:ad46c4941160e802f67afa20b4a85d08e inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ros::NodeHandle &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a></td></tr>
+<tr class="separator:a3594b46365559d7304942f983bddab03 inherit pro_attribs_classAbstract__robot__element__decorator"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classAbstract__robot__element"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstract__robot__element')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="memitem:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a></td></tr>
+<tr class="separator:a4d44edf1d412564ef916f16ee9035116 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a></td></tr>
+<tr class="separator:adcaadf1f399625d67747ce746a0cc928 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a></td></tr>
+<tr class="separator:a83f046bb2fb1009832091cf8502af956 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a></td></tr>
+<tr class="separator:a432662f8ece3c1e08739bd36a4c155d6 inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a></td></tr>
+<tr class="separator:ad42d8ba185583e644e00af1c2298a38d inherit pro_attribs_classAbstract__robot__element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8h_source.html#l00009">9</a> of file <a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a13ffcd407511d8812150f26b9b257806"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13ffcd407511d8812150f26b9b257806">&#9670;&nbsp;</a></span>Wing_rviz_decorator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Wing_rviz_decorator::Wing_rviz_decorator </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a> *&#160;</td>
+          <td class="paramname"><em>next</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8h_source.html#l00015">15</a> of file <a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a1a96d6aa2f86b5b187b7a55a8c604722"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a96d6aa2f86b5b187b7a55a8c604722">&#9670;&nbsp;</a></span>input_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_rviz_decorator::input_filter </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8cpp_source.html#l00009">9</a> of file <a class="el" href="wing__rviz__decorator_8cpp_source.html">wing_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a7f27d708e22c72dae7ec90c2f1f699b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f27d708e22c72dae7ec90c2f1f699b2">&#9670;&nbsp;</a></span>markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::Marker* Wing_rviz_decorator::markers </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8h_source.html#l00017">17</a> of file <a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="ac2a0e83684cdab21c225699fab4b56f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2a0e83684cdab21c225699fab4b56f7">&#9670;&nbsp;</a></span>output_filter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_rviz_decorator::output_filter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8cpp_source.html#l00036">36</a> of file <a class="el" href="wing__rviz__decorator_8cpp_source.html">wing_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab14def4c2e63ce9036488b894e74c507"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab14def4c2e63ce9036488b894e74c507">&#9670;&nbsp;</a></span>set_markers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_rviz_decorator::set_markers </td>
+          <td>(</td>
+          <td class="paramtype">visualization_msgs::Marker *&#160;</td>
+          <td class="paramname"><em>markers</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8h_source.html#l00016">16</a> of file <a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<a id="af5dce35a8439a2f1c5037cc3dc6d434e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af5dce35a8439a2f1c5037cc3dc6d434e">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wing_rviz_decorator::update </td>
+          <td>(</td>
+          <td class="paramtype">tf2::Transform &amp;&#160;</td>
+          <td class="paramname"><em>tf</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8cpp_source.html#l00003">3</a> of file <a class="el" href="wing__rviz__decorator_8cpp_source.html">wing_rviz_decorator.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a9b7cdc7830647d8c6005414b2694cdf5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b7cdc7830647d8c6005414b2694cdf5">&#9670;&nbsp;</a></span>marker_</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">visualization_msgs::Marker* Wing_rviz_decorator::marker_ = new visualization_msgs::Marker()</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="wing__rviz__decorator_8h_source.html#l00011">11</a> of file <a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="wing__rviz__decorator_8h_source.html">wing_rviz_decorator.h</a></li>
+<li><a class="el" href="wing__rviz__decorator_8cpp_source.html">wing_rviz_decorator.cpp</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/classWing__rviz__decorator__inherit__graph.map b/doc/html/classWing__rviz__decorator__inherit__graph.map
new file mode 100644
index 0000000000000000000000000000000000000000..6545b22fd9cde13ed6f4d6ad846ae6d0b1ed8b5c
--- /dev/null
+++ b/doc/html/classWing__rviz__decorator__inherit__graph.map
@@ -0,0 +1,5 @@
+<map id="Wing_rviz_decorator" name="Wing_rviz_decorator">
+<area shape="rect" id="node1" title=" " alt="" coords="17,169,172,196"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="5,80,184,121"/>
+<area shape="rect" id="node3" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,5,184,32"/>
+</map>
diff --git a/doc/html/classWing__rviz__decorator__inherit__graph.md5 b/doc/html/classWing__rviz__decorator__inherit__graph.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c26ea581a9809e9c5240b991ede43ff52978faa7
--- /dev/null
+++ b/doc/html/classWing__rviz__decorator__inherit__graph.md5
@@ -0,0 +1 @@
+1073790e3f1b5bcc8d25ec62d24604b2
\ No newline at end of file
diff --git a/doc/html/classWing__rviz__decorator__inherit__graph.png b/doc/html/classWing__rviz__decorator__inherit__graph.png
new file mode 100644
index 0000000000000000000000000000000000000000..6723f1a63e817d09b3368a7ebdc6b7fe02af85de
Binary files /dev/null and b/doc/html/classWing__rviz__decorator__inherit__graph.png differ
diff --git a/doc/html/classes.html b/doc/html/classes.html
new file mode 100644
index 0000000000000000000000000000000000000000..e8047672cf3c0c9ac629c7d3ca406b3189e61155
--- /dev/null
+++ b/doc/html/classes.html
@@ -0,0 +1,122 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Index</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Class Index</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_a">a</a>&#160;|&#160;<a class="qindex" href="#letter_b">b</a>&#160;|&#160;<a class="qindex" href="#letter_c">c</a>&#160;|&#160;<a class="qindex" href="#letter_f">f</a>&#160;|&#160;<a class="qindex" href="#letter_j">j</a>&#160;|&#160;<a class="qindex" href="#letter_l">l</a>&#160;|&#160;<a class="qindex" href="#letter_m">m</a>&#160;|&#160;<a class="qindex" href="#letter_o">o</a>&#160;|&#160;<a class="qindex" href="#letter_p">p</a>&#160;|&#160;<a class="qindex" href="#letter_r">r</a>&#160;|&#160;<a class="qindex" href="#letter_s">s</a>&#160;|&#160;<a class="qindex" href="#letter_t">t</a>&#160;|&#160;<a class="qindex" href="#letter_w">w</a></div>
+<table class="classindex">
+<tr><td rowspan="2" valign="bottom"><a name="letter_a"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;a&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classBase__calculation__mediator.html">Base_calculation_mediator</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_l"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;l&#160;&#160;</div></td></tr></table>
+</td>
+<td rowspan="2" valign="bottom"><a name="letter_p"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;p&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classTs__reader.html">Ts_reader</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_c"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;c&#160;&#160;</div></td></tr></table>
+</td>
+<td rowspan="2" valign="bottom"><a name="letter_w"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;w&#160;&#160;</div></td></tr></table>
+</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__base.html">Abstract_base</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classLog__decorator.html">Log_decorator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classPanda__decorator.html">Panda_decorator</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__base__implementation.html">Abstract_base_implementation</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classCeti__robot.html">Ceti_robot</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_m"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;m&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classPanel.html">Panel</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classWing.html">Wing</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__map__loader.html">Abstract_map_loader</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classCollision__helper.html">Collision_helper</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_r"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;r&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="structwing__BP.html">wing_BP</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classMap__loader.html">Map_loader</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__param__reader.html">Abstract_param_reader</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_f"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;f&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classMap__reader.html">Map_reader</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classRobot.html">Robot</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classWing__reader.html">Wing_reader</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__robot.html">Abstract_robot</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classMediator.html">Mediator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classRobot__reader.html">Robot_reader</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>&#160;&#160;&#160;</td>
+</tr>
+<tr><td valign="top"><a class="el" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classField.html">Field</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classRviz__panel.html">Rviz_panel</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td valign="top"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
+</td>
+<td></td></tr>
+<tr><td valign="top"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_j"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;j&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classMoveit__panel.html">Moveit_panel</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td valign="top"><a class="el" href="classAbstract__strategy.html">Abstract_strategy</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classMoveit__robot.html">Moveit_robot</a>&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classSimple__base.html">Simple_base</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_b"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;b&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="structjob__data.html">job_data</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_o"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;o&#160;&#160;</div></td></tr></table>
+</td>
+<td valign="top"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td valign="top"><a class="el" href="classJob__reader.html">Job_reader</a>&#160;&#160;&#160;</td>
+<td rowspan="2" valign="bottom"><a name="letter_t"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;t&#160;&#160;</div></td></tr></table>
+</td>
+<td></td></tr>
+<tr><td valign="top"><a class="el" href="classBase__by__rotation.html">Base_by_rotation</a>&#160;&#160;&#160;</td>
+<td></td><td valign="top"><a class="el" href="structobject__data.html">object_data</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td></td><td></td><td></td><td valign="top"><a class="el" href="classTask__space__reader.html">Task_space_reader</a>&#160;&#160;&#160;</td>
+<td></td></tr>
+<tr><td></td><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter_a">a</a>&#160;|&#160;<a class="qindex" href="#letter_b">b</a>&#160;|&#160;<a class="qindex" href="#letter_c">c</a>&#160;|&#160;<a class="qindex" href="#letter_f">f</a>&#160;|&#160;<a class="qindex" href="#letter_j">j</a>&#160;|&#160;<a class="qindex" href="#letter_l">l</a>&#160;|&#160;<a class="qindex" href="#letter_m">m</a>&#160;|&#160;<a class="qindex" href="#letter_o">o</a>&#160;|&#160;<a class="qindex" href="#letter_p">p</a>&#160;|&#160;<a class="qindex" href="#letter_r">r</a>&#160;|&#160;<a class="qindex" href="#letter_s">s</a>&#160;|&#160;<a class="qindex" href="#letter_t">t</a>&#160;|&#160;<a class="qindex" href="#letter_w">w</a></div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/closed.png b/doc/html/closed.png
new file mode 100644
index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5
Binary files /dev/null and b/doc/html/closed.png differ
diff --git a/doc/html/collision__helper_8cpp.html b/doc/html/collision__helper_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e07fff4af93524b69e87ac30da4a1041773b617
--- /dev/null
+++ b/doc/html/collision__helper_8cpp.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: collision_helper.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">collision_helper.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="collision__helper_8h_source.html">impl/collision_helper.h</a>&quot;</code><br />
+<code>#include &lt;moveit/collision_detection/collision_common.h&gt;</code><br />
+<code>#include &lt;fcl/broadphase/broadphase_dynamic_AABB_tree.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for collision_helper.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="collision__helper_8cpp__incl.png" border="0" usemap="#collision__helper_8cpp" alt=""/></div>
+<map name="collision__helper_8cpp" id="collision__helper_8cpp">
+<area shape="rect" title=" " alt="" coords="337,5,488,32"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="121,87,291,114"/>
+<area shape="rect" title=" " alt="" coords="315,80,510,121"/>
+<area shape="rect" title=" " alt="" coords="535,80,733,121"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="109,169,303,211"/>
+<area shape="rect" title=" " alt="" coords="327,169,522,211"/>
+</map>
+</div>
+</div>
+<p><a href="collision__helper_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/collision__helper_8cpp__incl.map b/doc/html/collision__helper_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5be92731277a29bf6fc710674c2536daef65843b
--- /dev/null
+++ b/doc/html/collision__helper_8cpp__incl.map
@@ -0,0 +1,9 @@
+<map id="collision_helper.cpp" name="collision_helper.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="337,5,488,32"/>
+<area shape="rect" id="node2" href="$collision__helper_8h.html" title=" " alt="" coords="121,87,291,114"/>
+<area shape="rect" id="node6" title=" " alt="" coords="315,80,510,121"/>
+<area shape="rect" id="node7" title=" " alt="" coords="535,80,733,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="109,169,303,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="327,169,522,211"/>
+</map>
diff --git a/doc/html/collision__helper_8cpp__incl.md5 b/doc/html/collision__helper_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7c588d3300aff2d7a33899d70f5069d5cd08c074
--- /dev/null
+++ b/doc/html/collision__helper_8cpp__incl.md5
@@ -0,0 +1 @@
+512f0388fd5b1a35652fd088ed3dc4ca
\ No newline at end of file
diff --git a/doc/html/collision__helper_8cpp__incl.png b/doc/html/collision__helper_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..240138fbfa6b572d9b9b8fb234fe8e75cfe26242
Binary files /dev/null and b/doc/html/collision__helper_8cpp__incl.png differ
diff --git a/doc/html/collision__helper_8cpp_source.html b/doc/html/collision__helper_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..278ecac8b7f9ca2d06ec2d55d3f8780e06622709
--- /dev/null
+++ b/doc/html/collision__helper_8cpp_source.html
@@ -0,0 +1,71 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: collision_helper.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">collision_helper.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="collision__helper_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="collision__helper_8h.html">impl/collision_helper.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;moveit/collision_detection/collision_common.h&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &lt;fcl/broadphase/broadphase_dynamic_AABB_tree.h&gt;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno"><a class="line" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">    5</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper::collision_detector</a>(<span class="keyword">const</span> std::string&amp; object1_name, <span class="keyword">const</span> std::string&amp; object2_name){ </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <span class="keywordflow">for</span> (std::map&lt;std::string, collision_detection::FCLObject&gt;::const_iterator it = fcl_objs_.begin(); it != fcl_objs_.end(); ++it){</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        std::string obj = it-&gt;first;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;object %s&quot;</span>, obj.c_str());</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    }</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">    auto objA = fcl_objs_.at(object1_name);</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">    auto objB = fcl_objs_.at(object2_name);</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">    </span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">    auto manager1 = std::make_unique&lt;fcl::DynamicAABBTreeCollisionManagerd&gt;();</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">    auto manager2 = std::make_unique&lt;fcl::DynamicAABBTreeCollisionManagerd&gt;();</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">    objA.registerTo(manager1.get());</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">    objB.registerTo(manager2.get());</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">    // Perform collision detection</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">    collision_detection::CollisionRequest req;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">    collision_detection::CollisionResult res;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">    collision_detection::CollisionData cd;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">    cd.req_ = &amp;req;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">    cd.res_ = &amp;res;</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">    manager1-&gt;collide(manager2.get(), &amp;cd, &amp;collision_detection::collisionCallback);</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="comment">//ROS_INFO(&quot;läuft %i&quot;, fcl_objs_.size());</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassCollision__helper_html_a0969d2a29f043ad3509bf174ecc103ec"><div class="ttname"><a href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper::collision_detector</a></div><div class="ttdeci">bool collision_detector(const std::string &amp;object1_name, const std::string &amp;object2_name)</div><div class="ttdef"><b>Definition:</b> <a href="collision__helper_8cpp_source.html#l00005">collision_helper.cpp:5</a></div></div>
+<div class="ttc" id="acollision__helper_8h_html"><div class="ttname"><a href="collision__helper_8h.html">collision_helper.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/collision__helper_8h.html b/doc/html/collision__helper_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..121d0a4bb95a81f5ebf478ebd9e6139aa9cc3f72
--- /dev/null
+++ b/doc/html/collision__helper_8h.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: collision_helper.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">collision_helper.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &lt;moveit/collision_detection/collision_env.h&gt;</code><br />
+<code>#include &lt;moveit/collision_detection_fcl/collision_env_fcl.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for collision_helper.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="collision__helper_8h__incl.png" border="0" usemap="#collision__helper_8h" alt=""/></div>
+<map name="collision__helper_8h" id="collision__helper_8h">
+<area shape="rect" title=" " alt="" coords="138,5,274,32"/>
+<area shape="rect" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" title=" " alt="" coords="109,80,303,121"/>
+<area shape="rect" title=" " alt="" coords="327,80,522,121"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="collision__helper_8h__dep__incl.png" border="0" usemap="#collision__helper_8hdep" alt=""/></div>
+<map name="collision__helper_8hdep" id="collision__helper_8hdep">
+<area shape="rect" title=" " alt="" coords="277,5,413,32"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="217,80,363,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="101,229,269,256"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="475,155,601,181"/>
+<area shape="rect" href="collision__helper_8cpp.html" title=" " alt="" coords="439,80,589,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="262,155,451,181"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="25,155,187,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="293,229,497,256"/>
+</map>
+</div>
+</div>
+<p><a href="collision__helper_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCollision__helper.html">Collision_helper</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/collision__helper_8h__dep__incl.map b/doc/html/collision__helper_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..03869baa3a3bf19e3d74d9d9fa2cb11184027107
--- /dev/null
+++ b/doc/html/collision__helper_8h__dep__incl.map
@@ -0,0 +1,10 @@
+<map id="collision_helper.h" name="collision_helper.h">
+<area shape="rect" id="node1" title=" " alt="" coords="277,5,413,32"/>
+<area shape="rect" id="node2" href="$moveit__mediator_8h.html" title=" " alt="" coords="217,80,363,107"/>
+<area shape="rect" id="node4" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="101,229,269,256"/>
+<area shape="rect" id="node6" href="$cell__routine_8cpp.html" title=" " alt="" coords="475,155,601,181"/>
+<area shape="rect" id="node8" href="$collision__helper_8cpp.html" title=" " alt="" coords="439,80,589,107"/>
+<area shape="rect" id="node3" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="262,155,451,181"/>
+<area shape="rect" id="node7" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="25,155,187,181"/>
+<area shape="rect" id="node5" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="293,229,497,256"/>
+</map>
diff --git a/doc/html/collision__helper_8h__dep__incl.md5 b/doc/html/collision__helper_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d046b1a750f0bef0ac6f9daeafc4c0321b15a269
--- /dev/null
+++ b/doc/html/collision__helper_8h__dep__incl.md5
@@ -0,0 +1 @@
+6000769d0dec38a282065815e2a36181
\ No newline at end of file
diff --git a/doc/html/collision__helper_8h__dep__incl.png b/doc/html/collision__helper_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..6d55818fd4da884464328de800f891d442deb6f4
Binary files /dev/null and b/doc/html/collision__helper_8h__dep__incl.png differ
diff --git a/doc/html/collision__helper_8h__incl.map b/doc/html/collision__helper_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..9a1b4243ddbaf6ae29ebc2711da29a3be7e68752
--- /dev/null
+++ b/doc/html/collision__helper_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="collision_helper.h" name="collision_helper.h">
+<area shape="rect" id="node1" title=" " alt="" coords="138,5,274,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" id="node3" title=" " alt="" coords="109,80,303,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="327,80,522,121"/>
+</map>
diff --git a/doc/html/collision__helper_8h__incl.md5 b/doc/html/collision__helper_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..082f80fbb1295ef22464d2e19af71c048a0c6abb
--- /dev/null
+++ b/doc/html/collision__helper_8h__incl.md5
@@ -0,0 +1 @@
+98bfe2f96845b537284d98f7e4e93b8c
\ No newline at end of file
diff --git a/doc/html/collision__helper_8h__incl.png b/doc/html/collision__helper_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ef5091e568d9ce835b1d78bbcebca9d3a98bb05a
Binary files /dev/null and b/doc/html/collision__helper_8h__incl.png differ
diff --git a/doc/html/collision__helper_8h_source.html b/doc/html/collision__helper_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..a36f8d58a81961c138ceb436d9bb6cc0bed39b4e
--- /dev/null
+++ b/doc/html/collision__helper_8h_source.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: collision_helper.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">collision_helper.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="collision__helper_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef COLLISION_HELPER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define COLLISION_HELPER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;moveit/collision_detection/collision_env.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;moveit/collision_detection_fcl/collision_env_fcl.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classCollision__helper.html">   10</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCollision__helper.html">Collision_helper</a> : <span class="keyword">public</span> collision_detection::CollisionEnvFCL{</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <a class="code" href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <a class="code" href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">~Collision_helper</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">collision_detector</a>(<span class="keyword">const</span> std::string&amp; object1_name, <span class="keyword">const</span> std::string&amp; object2_name);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;};</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassCollision__helper_html"><div class="ttname"><a href="classCollision__helper.html">Collision_helper</a></div><div class="ttdef"><b>Definition:</b> <a href="collision__helper_8h_source.html#l00010">collision_helper.h:10</a></div></div>
+<div class="ttc" id="aclassCollision__helper_html_a0969d2a29f043ad3509bf174ecc103ec"><div class="ttname"><a href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper::collision_detector</a></div><div class="ttdeci">bool collision_detector(const std::string &amp;object1_name, const std::string &amp;object2_name)</div><div class="ttdef"><b>Definition:</b> <a href="collision__helper_8cpp_source.html#l00005">collision_helper.cpp:5</a></div></div>
+<div class="ttc" id="aclassCollision__helper_html_a3578a1bf2e59c1f5e55fc396ce966e9b"><div class="ttname"><a href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">Collision_helper::~Collision_helper</a></div><div class="ttdeci">~Collision_helper()=default</div></div>
+<div class="ttc" id="aclassCollision__helper_html_a1637a6d6db9a3a3458ab0eec053c5d9a"><div class="ttname"><a href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper::Collision_helper</a></div><div class="ttdeci">Collision_helper()=default</div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/cuboid__reader_8cpp.html b/doc/html/cuboid__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..be8d2ad148457b577d74ec2de1e09a016e855b4b
--- /dev/null
+++ b/doc/html/cuboid__reader_8cpp.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cuboid_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">cuboid_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="cuboid__reader_8h_source.html">reader/cuboid_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for cuboid_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="cuboid__reader_8cpp__incl.png" border="0" usemap="#cuboid__reader_8cpp" alt=""/></div>
+<map name="cuboid__reader_8cpp" id="cuboid__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="250,5,391,32"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="235,80,407,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" title=" " alt="" coords="581,162,724,189"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="386,155,557,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="cuboid__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/cuboid__reader_8cpp__incl.map b/doc/html/cuboid__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..1e8421d10b8f57a305464601bf5c58f3ed1fc273
--- /dev/null
+++ b/doc/html/cuboid__reader_8cpp__incl.map
@@ -0,0 +1,14 @@
+<map id="cuboid_reader.cpp" name="cuboid_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="250,5,391,32"/>
+<area shape="rect" id="node2" href="$cuboid__reader_8h.html" title=" " alt="" coords="235,80,407,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" title=" " alt="" coords="581,162,724,189"/>
+<area shape="rect" id="node7" href="$abstract__param__reader_8h.html" title=" " alt="" coords="386,155,557,196"/>
+<area shape="rect" id="node8" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node12" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/cuboid__reader_8cpp__incl.md5 b/doc/html/cuboid__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..2e086514540a55c386ca4587132992f54855427c
--- /dev/null
+++ b/doc/html/cuboid__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+78c86c28e7ca195f2517367e042aaf9c
\ No newline at end of file
diff --git a/doc/html/cuboid__reader_8cpp__incl.png b/doc/html/cuboid__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..69ffc264660543e81f55ac2da38143c774f897de
Binary files /dev/null and b/doc/html/cuboid__reader_8cpp__incl.png differ
diff --git a/doc/html/cuboid__reader_8cpp_source.html b/doc/html/cuboid__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..e06e8520ae8813f3ad91e71c2c2b33cc95fbd911
--- /dev/null
+++ b/doc/html/cuboid__reader_8cpp_source.html
@@ -0,0 +1,129 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cuboid_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">cuboid_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="cuboid__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cuboid__reader_8h.html">reader/cuboid_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader::read</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- CUBOID_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>, resources);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        std::string <span class="keywordtype">id</span> = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keywordflow">if</span>(resources[i][<span class="stringliteral">&quot;type&quot;</span>] == <span class="stringliteral">&quot;BOX&quot;</span>){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;            tf2::Vector3 pos;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;            tf2::Vector3 size;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            tf2::Quaternion rot;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            Cuboid o;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;            o.Name = <span class="keywordtype">id</span>.c_str();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            o.Pose.position.x = pos.getX();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            o.Pose.position.y = pos.getY();</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;            o.Pose.position.z = pos.getZ();</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;            o.Pose.orientation.x = rot.getX();</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;            o.Pose.orientation.y = rot.getY();</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;            o.Pose.orientation.z = rot.getZ();</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;            o.Pose.orientation.w = rot.getW();</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;            o.x_depth = size.getX();</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;            o.y_width = size.getY();</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;            o.z_heigth = size.getZ();</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;            </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;            <a class="code" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a>.push_back(o);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;--- Object: %s  --- Type: BOX  ---&quot;</span>, o.Name.c_str());</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        }</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keywordflow">if</span>(resources[i][<span class="stringliteral">&quot;type&quot;</span>] == <span class="stringliteral">&quot;BIN&quot;</span>){</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;            tf2::Vector3 pos;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;            tf2::Vector3 size;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;            tf2::Quaternion rot;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;            Cuboid o;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;            o.Name = <span class="keywordtype">id</span>.c_str();</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;            o.Pose.position.x = pos.getX();</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;            o.Pose.position.y = pos.getY();</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;            o.Pose.position.z = pos.getZ();</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;            o.Pose.orientation.x = rot.getX();</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;            o.Pose.orientation.y = rot.getY();</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;            o.Pose.orientation.z = rot.getZ();</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;            o.Pose.orientation.w = rot.getW();</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;            o.x_depth = size.getX();</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;            o.y_width = size.getY();</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;            o.z_heigth = size.getZ();</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            <a class="code" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a>.push_back(o);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;--- Object: %s  --- Type: BIN  ---&quot;</span>, o.Name.c_str());</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Object: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        }</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    }</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassCuboid__reader_html_af8a5a286ea79d157c294d0f1efc9ce8a"><div class="ttname"><a href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">Cuboid_reader::cuboid_obstacle_</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_obstacle_</div><div class="ttdoc">As obstacle defined objects.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00020">cuboid_reader.h:20</a></div></div>
+<div class="ttc" id="acuboid__reader_8h_html"><div class="ttname"><a href="cuboid__reader_8h.html">cuboid_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_aa9fb23e8916e3288d8172725b8cd1842"><div class="ttname"><a href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8cpp_source.html#l00003">cuboid_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_ae02b31c6baf83e5d957170a7d454224b"><div class="ttname"><a href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">Cuboid_reader::cuboid_box_</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_box_</div><div class="ttdoc">As box defined object.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00019">cuboid_reader.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/cuboid__reader_8h.html b/doc/html/cuboid__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..321e266c953d8993ef0743ca2bf93e32bb940170
--- /dev/null
+++ b/doc/html/cuboid__reader_8h.html
@@ -0,0 +1,86 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cuboid_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">cuboid_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;gb_grasp/Cuboid.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for cuboid_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="cuboid__reader_8h__incl.png" border="0" usemap="#cuboid__reader_8h" alt=""/></div>
+<map name="cuboid__reader_8h" id="cuboid__reader_8h">
+<area shape="rect" title=" " alt="" coords="257,5,384,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" title=" " alt="" coords="581,87,724,114"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="386,80,557,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="cuboid__reader_8h__dep__incl.png" border="0" usemap="#cuboid__reader_8hdep" alt=""/></div>
+<map name="cuboid__reader_8hdep" id="cuboid__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="345,5,471,32"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="313,155,503,181"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,229,173,256"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="224,80,371,107"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="527,155,652,181"/>
+<area shape="rect" href="cuboid__reader_8cpp.html" title=" " alt="" coords="496,80,637,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="306,229,510,256"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="127,155,289,181"/>
+</map>
+</div>
+</div>
+<p><a href="cuboid__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCuboid__reader.html">Cuboid_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cuboid reader.  <a href="classCuboid__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/cuboid__reader_8h__dep__incl.map b/doc/html/cuboid__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..422ce856a5c60f0ace51cb5257af8f8c708d685d
--- /dev/null
+++ b/doc/html/cuboid__reader_8h__dep__incl.map
@@ -0,0 +1,10 @@
+<map id="cuboid_reader.h" name="cuboid_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="345,5,471,32"/>
+<area shape="rect" id="node2" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="313,155,503,181"/>
+<area shape="rect" id="node3" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,229,173,256"/>
+<area shape="rect" id="node5" href="$moveit__mediator_8h.html" title=" " alt="" coords="224,80,371,107"/>
+<area shape="rect" id="node6" href="$cell__routine_8cpp.html" title=" " alt="" coords="527,155,652,181"/>
+<area shape="rect" id="node8" href="$cuboid__reader_8cpp.html" title=" " alt="" coords="496,80,637,107"/>
+<area shape="rect" id="node4" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="306,229,510,256"/>
+<area shape="rect" id="node7" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="127,155,289,181"/>
+</map>
diff --git a/doc/html/cuboid__reader_8h__dep__incl.md5 b/doc/html/cuboid__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..049b252fd7967956dcd0bcd5d7ac14d550e2cd28
--- /dev/null
+++ b/doc/html/cuboid__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+7a580f21e66fbf801ffbb9f1c2bcf3cb
\ No newline at end of file
diff --git a/doc/html/cuboid__reader_8h__dep__incl.png b/doc/html/cuboid__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..fce1e53d88548339429e194f16cec9fa4144cde5
Binary files /dev/null and b/doc/html/cuboid__reader_8h__dep__incl.png differ
diff --git a/doc/html/cuboid__reader_8h__incl.map b/doc/html/cuboid__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4bffbdd6f84e7246e3480bc895c618078a9476e2
--- /dev/null
+++ b/doc/html/cuboid__reader_8h__incl.map
@@ -0,0 +1,13 @@
+<map id="cuboid_reader.h" name="cuboid_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="257,5,384,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="581,87,724,114"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="386,80,557,121"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/cuboid__reader_8h__incl.md5 b/doc/html/cuboid__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..87014cdb00c5be9f44b775692c6c74656710c266
--- /dev/null
+++ b/doc/html/cuboid__reader_8h__incl.md5
@@ -0,0 +1 @@
+1728f742f619a012e3f6c064f882f275
\ No newline at end of file
diff --git a/doc/html/cuboid__reader_8h__incl.png b/doc/html/cuboid__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..7dcc7ce2231b2c0133ad4e3aaaf8f56874bf5f22
Binary files /dev/null and b/doc/html/cuboid__reader_8h__incl.png differ
diff --git a/doc/html/cuboid__reader_8h_source.html b/doc/html/cuboid__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b08893c247cf72ab759b0677d3167ba4c1d7a326
--- /dev/null
+++ b/doc/html/cuboid__reader_8h_source.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: cuboid_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">cuboid_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="cuboid__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef CUBOID_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define CUBOID_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/Cuboid.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classCuboid__reader.html">   17</a></span>&#160;<span class="keyword">class </span><a class="code" href="classCuboid__reader.html">Cuboid_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">   19</a></span>&#160;    std::vector&lt;Cuboid&gt; <a class="code" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a>; </div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">   20</a></span>&#160;    std::vector&lt;Cuboid&gt; <a class="code" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a>; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">   28</a></span>&#160;    <a class="code" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">read</a>();}</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">   34</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">set_cuboid_bin_data</a>(std::vector&lt;Cuboid&gt;&amp; cuboid_data) {<a class="code" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a> = cuboid_data;}</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">   40</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">set_cuboid_obstacle_data</a>(std::vector&lt;Cuboid&gt;&amp; cuboid_data) {<a class="code" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a> = cuboid_data;}</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">   46</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;Cuboid&gt; <a class="code" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">cuboid_bin</a>() {<span class="keywordflow">return</span> <a class="code" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">cuboid_box_</a>;}</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">   52</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;Cuboid&gt; <a class="code" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">cuboid_obstacle</a>() {<span class="keywordflow">return</span> <a class="code" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">cuboid_obstacle_</a>;}</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;};</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassCuboid__reader_html_af8a5a286ea79d157c294d0f1efc9ce8a"><div class="ttname"><a href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">Cuboid_reader::cuboid_obstacle_</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_obstacle_</div><div class="ttdoc">As obstacle defined objects.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00020">cuboid_reader.h:20</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_ace0ace01df2eeb0607e8ad9d2764200d"><div class="ttname"><a href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">Cuboid_reader::set_cuboid_obstacle_data</a></div><div class="ttdeci">void set_cuboid_obstacle_data(std::vector&lt; Cuboid &gt; &amp;cuboid_data)</div><div class="ttdoc">Set Cuboid obstacle.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00040">cuboid_reader.h:40</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html"><div class="ttname"><a href="classCuboid__reader.html">Cuboid_reader</a></div><div class="ttdoc">Cuboid reader.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00017">cuboid_reader.h:17</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_a3f80a47bd3b32eb3daaa7ee4c9dbd670"><div class="ttname"><a href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">Cuboid_reader::cuboid_bin</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_bin()</div><div class="ttdoc">Get Cuboid box.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00046">cuboid_reader.h:46</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_a79e976d81d68adfc6b15d5b6879a726e"><div class="ttname"><a href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">Cuboid_reader::set_cuboid_bin_data</a></div><div class="ttdeci">void set_cuboid_bin_data(std::vector&lt; Cuboid &gt; &amp;cuboid_data)</div><div class="ttdoc">Set Cuboid box.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00034">cuboid_reader.h:34</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_aa9fb23e8916e3288d8172725b8cd1842"><div class="ttname"><a href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8cpp_source.html#l00003">cuboid_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_ae02b31c6baf83e5d957170a7d454224b"><div class="ttname"><a href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">Cuboid_reader::cuboid_box_</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_box_</div><div class="ttdoc">As box defined object.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00019">cuboid_reader.h:19</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_a499edb06157aac6287cdf683b0316a8b"><div class="ttname"><a href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">Cuboid_reader::cuboid_obstacle</a></div><div class="ttdeci">std::vector&lt; Cuboid &gt; cuboid_obstacle()</div><div class="ttdoc">Get Cuboid obstacle.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00052">cuboid_reader.h:52</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html_a23a0d80e92f06c576ee242239f27a68f"><div class="ttname"><a href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader::Cuboid_reader</a></div><div class="ttdeci">Cuboid_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Cuboid reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00028">cuboid_reader.h:28</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000001_000008.html b/doc/html/dir_000001_000008.html
new file mode 100644
index 0000000000000000000000000000000000000000..c915596025c2b5c32040f30506c9600b812e9477
--- /dev/null
+++ b/doc/html/dir_000001_000008.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: bridge -&gt; reader Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>bridge &rarr; reader Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/bridge</th><th class="dirtab">Includes file in include/reader</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="abstract__base_8h.html">abstract_base.h</a></td><td class="dirtab"><a class="el" href="abstract__param__reader_8h.html">abstract_param_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="simple__base_8h.html">simple_base.h</a></td><td class="dirtab"><a class="el" href="map__reader_8h.html">map_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="simple__base_8h.html">simple_base.h</a></td><td class="dirtab"><a class="el" href="ts__reader_8h.html">ts_reader.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000001_000010.html b/doc/html/dir_000001_000010.html
new file mode 100644
index 0000000000000000000000000000000000000000..97cd032d24880b371aa3a22d2f0b5275bcafe57c
--- /dev/null
+++ b/doc/html/dir_000001_000010.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: bridge -&gt; robot Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>bridge &rarr; robot Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/bridge</th><th class="dirtab">Includes file in include/robot</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="abstract__base_8h.html">abstract_base.h</a></td><td class="dirtab"><a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000002_000008.html b/doc/html/dir_000002_000008.html
new file mode 100644
index 0000000000000000000000000000000000000000..9bfa145c8977e0cc76800150dc7fe88e23ec9416
--- /dev/null
+++ b/doc/html/dir_000002_000008.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: impl -&gt; reader Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>impl &rarr; reader Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/impl</th><th class="dirtab">Includes file in include/reader</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="wing__reader_8h.html">wing_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></td><td class="dirtab"><a class="el" href="abstract__param__reader_8h.html">abstract_param_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></td><td class="dirtab"><a class="el" href="cuboid__reader_8h.html">cuboid_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></td><td class="dirtab"><a class="el" href="job__reader_8h.html">job_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></td><td class="dirtab"><a class="el" href="robot__reader_8h.html">robot_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__mediator_8h.html">moveit_mediator.h</a></td><td class="dirtab"><a class="el" href="cuboid__reader_8h.html">cuboid_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__mediator_8h.html">moveit_mediator.h</a></td><td class="dirtab"><a class="el" href="job__reader_8h.html">job_reader.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000004_000000.html b/doc/html/dir_000004_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..dda64cde9b71f6de9e3d9ed830a491a2bd003af3
--- /dev/null
+++ b/doc/html/dir_000004_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: impl -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>impl &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/impl</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__by__rotation_8cpp.html">base_by_rotation.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="base__by__rotation_8h.html">base_by_rotation.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="collision__helper_8cpp.html">collision_helper.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="collision__helper_8h.html">collision_helper.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="field__rviz__decorator_8cpp.html">field_rviz_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="field__rviz__decorator_8h.html">field_rviz_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="impl_2abstract__mediator_8cpp.html">impl/abstract_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="map__loader_8cpp.html">map_loader.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="map__loader_8h.html">map_loader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_8cpp.html">mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="mediator_8h.html">mediator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_8cpp.html">mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8cpp.html">moveit_grasp_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__grasp__mediator_8cpp.html">moveit_grasp_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__mediator_8cpp.html">moveit_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="moveit__mediator_8h.html">moveit_mediator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="robot_8cpp.html">robot.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="robot_8h.html">robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="wing__moveit__decorator_8cpp.html">wing_moveit_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="wing__rviz__decorator_8cpp.html">wing_rviz_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a>&#160;/&#160;<a class="el" href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000005_000000.html b/doc/html/dir_000005_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f724664cf366cd4a22000ae755b9d2522456dfb
--- /dev/null
+++ b/doc/html/dir_000005_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>mediator &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/mediator</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8cpp.html">base_calculation_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a>&#160;/&#160;<a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8cpp.html">mediator/abstract_mediator.cpp</a></td><td class="dirtab"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a>&#160;/&#160;<a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000006_000008.html b/doc/html/dir_000006_000008.html
new file mode 100644
index 0000000000000000000000000000000000000000..fc36df6bac0566eff53a6f5b4af69e00063ecccf
--- /dev/null
+++ b/doc/html/dir_000006_000008.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator -&gt; reader Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>mediator &rarr; reader Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/mediator</th><th class="dirtab">Includes file in include/reader</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="robot__reader_8h.html">robot_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="wing__reader_8h.html">wing_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="ts__reader_8h.html">ts_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="wing__reader_8h.html">wing_reader.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000006_000010.html b/doc/html/dir_000006_000010.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb2685c5baa8bca76a166ee8cdd694accf6b2740
--- /dev/null
+++ b/doc/html/dir_000006_000010.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator -&gt; robot Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>mediator &rarr; robot Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/mediator</th><th class="dirtab">Includes file in include/robot</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a>&#160;/&#160;<a class="el" href="abstract__robot__decorator_8h.html">abstract_robot_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000006_000012.html b/doc/html/dir_000006_000012.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd4a2a21c7d404b5337de1a5de87b7b9e9c961e3
--- /dev/null
+++ b/doc/html/dir_000006_000012.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator -&gt; robot_element Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>mediator &rarr; robot_element Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/mediator</th><th class="dirtab">Includes file in include/robot_element</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a>&#160;/&#160;<a class="el" href="log__decorator_8h.html">log_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></td><td class="dirtab"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="rviz__panel_8h.html">rviz_panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a></td><td class="dirtab"><a class="el" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000007_000000.html b/doc/html/dir_000007_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..fce2d0ea2185c11a342d35a9cef02ee9d3c8aff8
--- /dev/null
+++ b/doc/html/dir_000007_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: reader -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>reader &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/reader</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="abstract__param__reader_8cpp.html">abstract_param_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="abstract__param__reader_8h.html">abstract_param_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="cuboid__reader_8cpp.html">cuboid_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="cuboid__reader_8h.html">cuboid_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="job__reader_8cpp.html">job_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="job__reader_8h.html">job_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="map__reader_8cpp.html">map_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="map__reader_8h.html">map_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="robot__reader_8cpp.html">robot_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="robot__reader_8h.html">robot_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="task__space__reader_8cpp.html">task_space_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="task__space__reader_8h.html">task_space_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ts__reader_8cpp.html">ts_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="ts__reader_8h.html">ts_reader.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="wing__reader_8cpp.html">wing_reader.cpp</a></td><td class="dirtab"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a>&#160;/&#160;<a class="el" href="wing__reader_8h.html">wing_reader.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000009_000000.html b/doc/html/dir_000009_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..5fc1eadbab54acbefc120eecc0bc500110540755
--- /dev/null
+++ b/doc/html/dir_000009_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>robot &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/robot</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="abstract__robot_8cpp.html">abstract_robot.cpp</a></td><td class="dirtab"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a>&#160;/&#160;<a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ceti__robot_8cpp.html">ceti_robot.cpp</a></td><td class="dirtab"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a>&#160;/&#160;<a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a>&#160;/&#160;<a class="el" href="panda__decorator_8cpp.html">panda_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a>&#160;/&#160;<a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a>&#160;/&#160;<a class="el" href="panda__decorator_8h.html">panda_decorator.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000010_000012.html b/doc/html/dir_000010_000012.html
new file mode 100644
index 0000000000000000000000000000000000000000..227a009c85a6571e68d885fa11313112e72902bb
--- /dev/null
+++ b/doc/html/dir_000010_000012.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot -&gt; robot_element Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>robot &rarr; robot_element Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/robot</th><th class="dirtab">Includes file in include/robot_element</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td><td class="dirtab"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="panel_8h.html">panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td><td class="dirtab"><a class="el" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td><td class="dirtab"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a>&#160;/&#160;<a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">robot_element/decorators/abstract_robot_element_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a></td><td class="dirtab"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a></td><td class="dirtab"><a class="el" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000013_000000.html b/doc/html/dir_000013_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..544bb05a9059f20e9fd3134c083abee011c59c10
--- /dev/null
+++ b/doc/html/dir_000013_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_element -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>robot_element &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/robot_element</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a>&#160;/&#160;<a class="el" href="field_8cpp.html">field.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a>&#160;/&#160;<a class="el" href="log__decorator_8cpp.html">log_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a>&#160;/&#160;<a class="el" href="log__decorator_8h.html">log_decorator.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a>&#160;/&#160;<a class="el" href="moveit__panel_8cpp.html">moveit_panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="moveit__panel_8h.html">moveit_panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a>&#160;/&#160;<a class="el" href="panel_8cpp.html">panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="panel_8h.html">panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a>&#160;/&#160;<a class="el" href="rviz__panel_8cpp.html">rviz_panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="rviz__panel_8h.html">rviz_panel.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000014_000000.html b/doc/html/dir_000014_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..719c29e35a70172d2051adca6ff371cdd9c5c96c
--- /dev/null
+++ b/doc/html/dir_000014_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>decorators &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/robot_element/decorators</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="log__decorator_8cpp.html">log_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a>&#160;/&#160;<a class="el" href="log__decorator_8h.html">log_decorator.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000016_000000.html b/doc/html/dir_000016_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..baa5c3488eab320b51c1cd1a92c0a52f15372f86
--- /dev/null
+++ b/doc/html/dir_000016_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: observers -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>observers &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/robot_element/observers</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="field_8cpp.html">field.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="moveit__panel_8cpp.html">moveit_panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="moveit__panel_8h.html">moveit_panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="panel_8cpp.html">panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="panel_8h.html">panel.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="rviz__panel_8cpp.html">rviz_panel.cpp</a></td><td class="dirtab"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a>&#160;/&#160;<a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a>&#160;/&#160;<a class="el" href="rviz__panel_8h.html">rviz_panel.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000018_000000.html b/doc/html/dir_000018_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd552e758cde682fd22d74463a0b9922c31a3d3e
--- /dev/null
+++ b/doc/html/dir_000018_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li><li class="navelem"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>decorators &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/robot/decorators</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="panda__decorator_8cpp.html">panda_decorator.cpp</a></td><td class="dirtab"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a>&#160;/&#160;<a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a>&#160;/&#160;<a class="el" href="panda__decorator_8h.html">panda_decorator.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_000019_000000.html b/doc/html/dir_000019_000000.html
new file mode 100644
index 0000000000000000000000000000000000000000..d928fb4cd4819ab09f601f4103e9db776b8bd1c5
--- /dev/null
+++ b/doc/html/dir_000019_000000.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_bridge -&gt; include Relation</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>base_bridge &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src/base_bridge</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="simple__base_8cpp.html">simple_base.cpp</a></td><td class="dirtab"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a>&#160;/&#160;<a class="el" href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="simple__base_8cpp.html">simple_base.cpp</a></td><td class="dirtab"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a>&#160;/&#160;<a class="el" href="simple__base_8h.html">simple_base.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="simple__base__implementation_8cpp.html">simple_base_implementation.cpp</a></td><td class="dirtab"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a>&#160;/&#160;<a class="el" href="simple__base__implementation_8h.html">simple_base_implementation.h</a></td></tr></table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e.html b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e.html
new file mode 100644
index 0000000000000000000000000000000000000000..8802404cc9d9c8fe942d4ebcea7381e638ef3e4a
--- /dev/null
+++ b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_0197a5d81791167ca90f243ba28e7f5e_dep.png" border="0" usemap="#dir__0197a5d81791167ca90f243ba28e7f5e__dep" alt="mediator"/></div>
+<map name="dir__0197a5d81791167ca90f243ba28e7f5e__dep" id="dir__0197a5d81791167ca90f243ba28e7f5e__dep">
+<area shape="rect" href="dir_0197a5d81791167ca90f243ba28e7f5e.html" title="mediator" alt="" coords="27,52,109,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="32,148,104,196"/>
+<area shape="rect" href="dir_000005_000000.html" title="2" alt="" coords="72,122,81,137"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,120,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:mediator_2abstract__mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mediator_2abstract__mediator_8cpp.html">mediator/abstract_mediator.cpp</a> <a href="mediator_2abstract__mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base__calculation__mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__calculation__mediator_8cpp.html">base_calculation_mediator.cpp</a> <a href="base__calculation__mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.map b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..48e9e09fa4e640fb0e7b01c2abc51d537d221ec3
--- /dev/null
+++ b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.map
@@ -0,0 +1,6 @@
+<map id="mediator" name="mediator">
+<area shape="rect" id="node1" href="dir_0197a5d81791167ca90f243ba28e7f5e.html" title="mediator" alt="" coords="27,52,109,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="32,148,104,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000005_000000.html" title="2" alt="" coords="72,122,81,137"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,120,111"/>
+</map>
diff --git a/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.md5 b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e37a02de62433a0b6749b30ab874ce2bae8af164
--- /dev/null
+++ b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.md5
@@ -0,0 +1 @@
+ddea223db3636818e945677c20f20ca0
\ No newline at end of file
diff --git a/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.png b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..2062aefba4b288134ad63bcc15dd81279cbf304c
Binary files /dev/null and b/doc/html/dir_0197a5d81791167ca90f243ba28e7f5e_dep.png differ
diff --git a/doc/html/dir_129dfe63f339df39af9b29f455952c18.html b/doc/html/dir_129dfe63f339df39af9b29f455952c18.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d00041e0f063a601727c069cff549a9845b7f0f
--- /dev/null
+++ b/doc/html/dir_129dfe63f339df39af9b29f455952c18.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">decorators Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for decorators:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_129dfe63f339df39af9b29f455952c18_dep.png" border="0" usemap="#dir__129dfe63f339df39af9b29f455952c18__dep" alt="decorators"/></div>
+<map name="dir__129dfe63f339df39af9b29f455952c18__dep" id="dir__129dfe63f339df39af9b29f455952c18__dep">
+<area shape="rect" href="dir_129dfe63f339df39af9b29f455952c18.html" title="decorators" alt="" coords="29,52,120,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="39,148,111,196"/>
+<area shape="rect" href="dir_000014_000000.html" title="1" alt="" coords="78,122,88,137"/>
+<area shape="rect" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__robot__element__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__robot__element__decorator_8cpp.html">abstract_robot_element_decorator.cpp</a> <a href="abstract__robot__element__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__decorator_8cpp.html">log_decorator.cpp</a> <a href="log__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.map b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..f7aa82ceb759d458f4253d6d44d05bbda1743953
--- /dev/null
+++ b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.map
@@ -0,0 +1,6 @@
+<map id="decorators" name="decorators">
+<area shape="rect" id="node1" href="dir_129dfe63f339df39af9b29f455952c18.html" title="decorators" alt="" coords="29,52,120,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="39,148,111,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000014_000000.html" title="1" alt="" coords="78,122,88,137"/>
+<area shape="rect" id="clust1" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
diff --git a/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.md5 b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..71dbbebfcff03b040b9922db1801e3e4e77cb5a1
--- /dev/null
+++ b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.md5
@@ -0,0 +1 @@
+f6cd5545e561debd6283d6246e5927bd
\ No newline at end of file
diff --git a/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.png b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..50f957936626448dc299929c04b53af032d3ae11
Binary files /dev/null and b/doc/html/dir_129dfe63f339df39af9b29f455952c18_dep.png differ
diff --git a/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7.html b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7.html
new file mode 100644
index 0000000000000000000000000000000000000000..adb3188b291f0cf9e8fc004a617803e2b3d6ab0b
--- /dev/null
+++ b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li><li class="navelem"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">decorators Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for decorators:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.png" border="0" usemap="#dir__213ed5268c3d3b5adb84b79e310ac6b7__dep" alt="decorators"/></div>
+<map name="dir__213ed5268c3d3b5adb84b79e310ac6b7__dep" id="dir__213ed5268c3d3b5adb84b79e310ac6b7__dep">
+<area shape="rect" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html" title="decorators" alt="" coords="27,52,117,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="36,148,108,196"/>
+<area shape="rect" href="dir_000018_000000.html" title="1" alt="" coords="76,122,85,137"/>
+<area shape="rect" href="dir_d623b6b26deaaca15238f927e86bbb46.html" title="robot" alt="" coords="16,16,128,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:panda__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="panda__decorator_8cpp.html">panda_decorator.cpp</a> <a href="panda__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.map b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..f0994d40239d9400b7a9af9823b1ffb3ee9ce059
--- /dev/null
+++ b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.map
@@ -0,0 +1,6 @@
+<map id="decorators" name="decorators">
+<area shape="rect" id="node1" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html" title="decorators" alt="" coords="27,52,117,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="36,148,108,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000018_000000.html" title="1" alt="" coords="76,122,85,137"/>
+<area shape="rect" id="clust1" href="dir_d623b6b26deaaca15238f927e86bbb46.html" title="robot" alt="" coords="16,16,128,111"/>
+</map>
diff --git a/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.md5 b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..62790034a09264fb9a8aae2d39b6ad49331a27d2
--- /dev/null
+++ b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.md5
@@ -0,0 +1 @@
+e49648eae3f782526c222e4ff6eed1ff
\ No newline at end of file
diff --git a/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.png b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..eb77371c6424101757a8d11a323b04a795150494
Binary files /dev/null and b/doc/html/dir_213ed5268c3d3b5adb84b79e310ac6b7_dep.png differ
diff --git a/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea.html b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f3535afe496fefae0f8ffa8dfa4afd04132bcd1
--- /dev/null
+++ b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: impl Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for impl:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_3808e3f8fe545b07b1d2715928fb0eea_dep.png" border="0" usemap="#dir__3808e3f8fe545b07b1d2715928fb0eea__dep" alt="impl"/></div>
+<map name="dir__3808e3f8fe545b07b1d2715928fb0eea__dep" id="dir__3808e3f8fe545b07b1d2715928fb0eea__dep">
+<area shape="rect" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html" title="impl" alt="" coords="27,52,99,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="27,148,99,196"/>
+<area shape="rect" href="dir_000004_000000.html" title="13" alt="" coords="62,122,80,137"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,109,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:impl_2abstract__mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8cpp.html">impl/abstract_mediator.cpp</a> <a href="impl_2abstract__mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base__by__rotation_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__by__rotation_8cpp.html">base_by_rotation.cpp</a> <a href="base__by__rotation_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:collision__helper_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="collision__helper_8cpp.html">collision_helper.cpp</a> <a href="collision__helper_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:field__rviz__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="field__rviz__decorator_8cpp.html">field_rviz_decorator.cpp</a> <a href="field__rviz__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:map__loader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="map__loader_8cpp.html">map_loader.cpp</a> <a href="map__loader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mediator_8cpp.html">mediator.cpp</a> <a href="mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__grasp__mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__grasp__mediator_8cpp.html">moveit_grasp_mediator.cpp</a> <a href="moveit__grasp__mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__mediator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__mediator_8cpp.html">moveit_mediator.cpp</a> <a href="moveit__mediator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:robot_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot_8cpp.html">robot.cpp</a> <a href="robot_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__moveit__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__moveit__decorator_8cpp.html">wing_moveit_decorator.cpp</a> <a href="wing__moveit__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__rviz__decorator_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__rviz__decorator_8cpp.html">wing_rviz_decorator.cpp</a> <a href="wing__rviz__decorator_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.map b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..bbba08f0a249412ed0aa3fcb9d51fc5242640c06
--- /dev/null
+++ b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.map
@@ -0,0 +1,6 @@
+<map id="impl" name="impl">
+<area shape="rect" id="node1" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html" title="impl" alt="" coords="27,52,99,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="27,148,99,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000004_000000.html" title="13" alt="" coords="62,122,80,137"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,109,111"/>
+</map>
diff --git a/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.md5 b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..106633ef5e9e7a7ca32494ebb861ad8663cb0cda
--- /dev/null
+++ b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.md5
@@ -0,0 +1 @@
+0223a01f286a7b452b1a533f189bd519
\ No newline at end of file
diff --git a/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.png b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..34f344d742e420f2e21fe53d80d5558a1e5b8bdc
Binary files /dev/null and b/doc/html/dir_3808e3f8fe545b07b1d2715928fb0eea_dep.png differ
diff --git a/doc/html/dir_4cbbe425e67f14606b10f98426aa0272.html b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272.html
new file mode 100644
index 0000000000000000000000000000000000000000..0a1cc508d31472146a28cf962093d5dd73f7436f
--- /dev/null
+++ b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_element Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_element Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for robot_element:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_4cbbe425e67f14606b10f98426aa0272_dep.png" border="0" usemap="#dir__4cbbe425e67f14606b10f98426aa0272__dep" alt="robot_element"/></div>
+<map name="dir__4cbbe425e67f14606b10f98426aa0272__dep" id="dir__4cbbe425e67f14606b10f98426aa0272__dep">
+<area shape="rect" href="dir_129dfe63f339df39af9b29f455952c18.html" title="decorators" alt="" coords="149,63,240,111"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="101,159,173,207"/>
+<area shape="rect" href="dir_000014_000000.html" title="1" alt="" coords="163,140,173,155"/>
+<area shape="rect" href="dir_ac0d2b250ac9afd645907a18604af17d.html" title="observers" alt="" coords="38,63,125,111"/>
+<area shape="rect" href="dir_000016_000000.html" title="4" alt="" coords="117,131,126,146"/>
+<area shape="rect" href="dir_4cbbe425e67f14606b10f98426aa0272.html" alt="" coords="27,52,392,121"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,403,132"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_129dfe63f339df39af9b29f455952c18"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_ac0d2b250ac9afd645907a18604af17d"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.map b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..baf7b5f7a5f9711e7fa4fcd21d535f08864b289c
--- /dev/null
+++ b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.map
@@ -0,0 +1,9 @@
+<map id="robot_element" name="robot_element">
+<area shape="rect" id="node2" href="dir_129dfe63f339df39af9b29f455952c18.html" title="decorators" alt="" coords="149,63,240,111"/>
+<area shape="rect" id="node4" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="101,159,173,207"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000014_000000.html" title="1" alt="" coords="163,140,173,155"/>
+<area shape="rect" id="node3" href="dir_ac0d2b250ac9afd645907a18604af17d.html" title="observers" alt="" coords="38,63,125,111"/>
+<area shape="rect" id="edge2-headlabel" href="dir_000016_000000.html" title="4" alt="" coords="117,131,126,146"/>
+<area shape="rect" id="clust2" href="dir_4cbbe425e67f14606b10f98426aa0272.html" alt="" coords="27,52,392,121"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,403,132"/>
+</map>
diff --git a/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.md5 b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..2230837560ac08250edf19389d4e7bdb36c2b911
--- /dev/null
+++ b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.md5
@@ -0,0 +1 @@
+43893af8baf45df7a9a688d01c529462
\ No newline at end of file
diff --git a/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.png b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..f592dd31079608cccc365a1ea035f6007f4cf77c
Binary files /dev/null and b/doc/html/dir_4cbbe425e67f14606b10f98426aa0272_dep.png differ
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
new file mode 100644
index 0000000000000000000000000000000000000000..80d4b1e7f3165e37d41e81268f5380ed2890f869
--- /dev/null
+++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: src Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">src Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for src:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png" border="0" usemap="#dir__68267d1309a1af8e8297ef4c3efbcdba__dep" alt="src"/></div>
+<map name="dir__68267d1309a1af8e8297ef4c3efbcdba__dep" id="dir__68267d1309a1af8e8297ef4c3efbcdba__dep">
+<area shape="rect" href="dir_bff0e0394a2452d575b35258352fd8fb.html" title="base_bridge" alt="" coords="563,27,664,75"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="315,123,387,171"/>
+<area shape="rect" href="dir_000019_000000.html" title="3" alt="" coords="402,133,411,148"/>
+<area shape="rect" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html" title="impl" alt="" coords="467,27,539,75"/>
+<area shape="rect" href="dir_000004_000000.html" title="13" alt="" coords="398,117,415,131"/>
+<area shape="rect" href="dir_0197a5d81791167ca90f243ba28e7f5e.html" title="mediator" alt="" coords="361,27,442,75"/>
+<area shape="rect" href="dir_000005_000000.html" title="2" alt="" coords="374,103,384,118"/>
+<area shape="rect" href="dir_af89b2be539cdaaafaad341d1e56977e.html" title="reader" alt="" coords="264,27,336,75"/>
+<area shape="rect" href="dir_000007_000000.html" title="8" alt="" coords="332,95,342,110"/>
+<area shape="rect" href="dir_d623b6b26deaaca15238f927e86bbb46.html" title="robot" alt="" coords="168,27,240,75"/>
+<area shape="rect" href="dir_000009_000000.html" title="3" alt="" coords="298,100,308,115"/>
+<area shape="rect" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="27,27,144,75"/>
+<area shape="rect" href="dir_000013_000000.html" title="5" alt="" coords="295,116,304,130"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" alt="" coords="16,16,771,85"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_bff0e0394a2452d575b35258352fd8fb"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_3808e3f8fe545b07b1d2715928fb0eea"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_0197a5d81791167ca90f243ba28e7f5e"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_af89b2be539cdaaafaad341d1e56977e"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_d623b6b26deaaca15238f927e86bbb46"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_4cbbe425e67f14606b10f98426aa0272"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:base__routine_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__routine_8cpp.html">base_routine.cpp</a> <a href="base__routine_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cell__routine_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cell__routine_8cpp.html">cell_routine.cpp</a> <a href="cell__routine_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:grasp__cell__routine_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grasp__cell__routine_8cpp.html">grasp_cell_routine.cpp</a> <a href="grasp__cell__routine_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:mtc2taskspace_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mtc2taskspace_8cpp.html">mtc2taskspace.cpp</a> <a href="mtc2taskspace_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:robot__base__calculation__approach_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__base__calculation__approach_8cpp.html">robot_base_calculation_approach.cpp</a> <a href="robot__base__calculation__approach_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..7d50d72525073f415b9d2b3e6edc312fd489eaa3
--- /dev/null
+++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map
@@ -0,0 +1,16 @@
+<map id="src" name="src">
+<area shape="rect" id="node2" href="dir_bff0e0394a2452d575b35258352fd8fb.html" title="base_bridge" alt="" coords="563,27,664,75"/>
+<area shape="rect" id="node8" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="315,123,387,171"/>
+<area shape="rect" id="edge3-headlabel" href="dir_000019_000000.html" title="3" alt="" coords="402,133,411,148"/>
+<area shape="rect" id="node3" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html" title="impl" alt="" coords="467,27,539,75"/>
+<area shape="rect" id="edge4-headlabel" href="dir_000004_000000.html" title="13" alt="" coords="398,117,415,131"/>
+<area shape="rect" id="node4" href="dir_0197a5d81791167ca90f243ba28e7f5e.html" title="mediator" alt="" coords="361,27,442,75"/>
+<area shape="rect" id="edge6-headlabel" href="dir_000005_000000.html" title="2" alt="" coords="374,103,384,118"/>
+<area shape="rect" id="node5" href="dir_af89b2be539cdaaafaad341d1e56977e.html" title="reader" alt="" coords="264,27,336,75"/>
+<area shape="rect" id="edge2-headlabel" href="dir_000007_000000.html" title="8" alt="" coords="332,95,342,110"/>
+<area shape="rect" id="node6" href="dir_d623b6b26deaaca15238f927e86bbb46.html" title="robot" alt="" coords="168,27,240,75"/>
+<area shape="rect" id="edge5-headlabel" href="dir_000009_000000.html" title="3" alt="" coords="298,100,308,115"/>
+<area shape="rect" id="node7" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="27,27,144,75"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000013_000000.html" title="5" alt="" coords="295,116,304,130"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" alt="" coords="16,16,771,85"/>
+</map>
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..6d3b8d8bfadc69cbb8dd2d5eda10fc115250a363
--- /dev/null
+++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5
@@ -0,0 +1 @@
+3dc619e33b520057d2ee5c4564369f68
\ No newline at end of file
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..32d71bd75c9122db88fe5fccef644bb0db27f4a0
Binary files /dev/null and b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png differ
diff --git a/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b.html b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b.html
new file mode 100644
index 0000000000000000000000000000000000000000..75e91c78edbdc7d88973806ff5e460d59e3fa11f
--- /dev/null
+++ b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for mediator:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.png" border="0" usemap="#dir__7b0efc06fc22adaf2ca7a380b2f6473b__dep" alt="mediator"/></div>
+<map name="dir__7b0efc06fc22adaf2ca7a380b2f6473b__dep" id="dir__7b0efc06fc22adaf2ca7a380b2f6473b__dep">
+<area shape="rect" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html" title="mediator" alt="" coords="74,52,155,100"/>
+<area shape="rect" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="5,148,77,196"/>
+<area shape="rect" href="dir_000006_000010.html" title="5" alt="" coords="72,131,82,146"/>
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="19,244,136,292"/>
+<area shape="rect" href="dir_000006_000012.html" title="3" alt="" coords="89,220,98,235"/>
+<area shape="rect" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="152,148,224,196"/>
+<area shape="rect" href="dir_000006_000008.html" title="4" alt="" coords="161,121,170,136"/>
+<area shape="rect" href="dir_000010_000012.html" title="5" alt="" coords="65,217,75,231"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="63,16,167,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:mediator_2abstract__mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a> <a href="mediator_2abstract__mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base__calculation__mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a> <a href="base__calculation__mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.map b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..3f76651f72658c83325b9cf04a33457b8f574a57
--- /dev/null
+++ b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.map
@@ -0,0 +1,11 @@
+<map id="mediator" name="mediator">
+<area shape="rect" id="node1" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html" title="mediator" alt="" coords="74,52,155,100"/>
+<area shape="rect" id="node2" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="5,148,77,196"/>
+<area shape="rect" id="edge2-headlabel" href="dir_000006_000010.html" title="5" alt="" coords="72,131,82,146"/>
+<area shape="rect" id="node3" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="19,244,136,292"/>
+<area shape="rect" id="edge3-headlabel" href="dir_000006_000012.html" title="3" alt="" coords="89,220,98,235"/>
+<area shape="rect" id="node4" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="152,148,224,196"/>
+<area shape="rect" id="edge4-headlabel" href="dir_000006_000008.html" title="4" alt="" coords="161,121,170,136"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000010_000012.html" title="5" alt="" coords="65,217,75,231"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="63,16,167,111"/>
+</map>
diff --git a/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.md5 b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..bc62433612fe21633b064114df9f39e2fc7278a1
--- /dev/null
+++ b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.md5
@@ -0,0 +1 @@
+f7b4ded3ff0f1d01a3865a039289f263
\ No newline at end of file
diff --git a/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.png b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..7a4f143f5a2428ceebf4bfc751f878e985a87374
Binary files /dev/null and b/doc/html/dir_7b0efc06fc22adaf2ca7a380b2f6473b_dep.png differ
diff --git a/doc/html/dir_82432a442f7690767534b978fe0f8420.html b/doc/html/dir_82432a442f7690767534b978fe0f8420.html
new file mode 100644
index 0000000000000000000000000000000000000000..7495a78377c58e9741d30ea97ab83306a74c9cbf
--- /dev/null
+++ b/doc/html/dir_82432a442f7690767534b978fe0f8420.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: bridge Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">bridge Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for bridge:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_82432a442f7690767534b978fe0f8420_dep.png" border="0" usemap="#dir__82432a442f7690767534b978fe0f8420__dep" alt="bridge"/></div>
+<map name="dir__82432a442f7690767534b978fe0f8420__dep" id="dir__82432a442f7690767534b978fe0f8420__dep">
+<area shape="rect" href="dir_82432a442f7690767534b978fe0f8420.html" title="bridge" alt="" coords="53,52,125,100"/>
+<area shape="rect" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="5,148,77,196"/>
+<area shape="rect" href="dir_000001_000010.html" title="1" alt="" coords="64,128,74,143"/>
+<area shape="rect" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="101,148,173,196"/>
+<area shape="rect" href="dir_000001_000008.html" title="3" alt="" coords="120,121,129,135"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="43,16,136,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__base_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__base_8h.html">abstract_base.h</a> <a href="abstract__base_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abstract__base__implementation_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a> <a href="abstract__base__implementation_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:simple__base_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="simple__base_8h.html">simple_base.h</a> <a href="simple__base_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:simple__base__implementation_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="simple__base__implementation_8h.html">simple_base_implementation.h</a> <a href="simple__base__implementation_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.map b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..e5dbb5c16f71734cf4cc7de8070bc1e21d39d71d
--- /dev/null
+++ b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.map
@@ -0,0 +1,8 @@
+<map id="bridge" name="bridge">
+<area shape="rect" id="node1" href="dir_82432a442f7690767534b978fe0f8420.html" title="bridge" alt="" coords="53,52,125,100"/>
+<area shape="rect" id="node2" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="5,148,77,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000001_000010.html" title="1" alt="" coords="64,128,74,143"/>
+<area shape="rect" id="node3" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="101,148,173,196"/>
+<area shape="rect" id="edge2-headlabel" href="dir_000001_000008.html" title="3" alt="" coords="120,121,129,135"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="43,16,136,111"/>
+</map>
diff --git a/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.md5 b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9bfabc0dc80524045696e7392477a4ac5a6cdb05
--- /dev/null
+++ b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.md5
@@ -0,0 +1 @@
+b373dfaec4d58b1fdbd7408fa55f6959
\ No newline at end of file
diff --git a/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.png b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..12b154096b0ba71aa7dc463f8ce93f2d1d3e4fda
Binary files /dev/null and b/doc/html/dir_82432a442f7690767534b978fe0f8420_dep.png differ
diff --git a/doc/html/dir_8f74abbdbad6e793f5da56469e42956a.html b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a.html
new file mode 100644
index 0000000000000000000000000000000000000000..7e602f547825a52816e0c828f227fe214a369211
--- /dev/null
+++ b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a.html
@@ -0,0 +1,90 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: impl Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for impl:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_8f74abbdbad6e793f5da56469e42956a_dep.png" border="0" usemap="#dir__8f74abbdbad6e793f5da56469e42956a__dep" alt="impl"/></div>
+<map name="dir__8f74abbdbad6e793f5da56469e42956a__dep" id="dir__8f74abbdbad6e793f5da56469e42956a__dep">
+<area shape="rect" href="dir_8f74abbdbad6e793f5da56469e42956a.html" title="impl" alt="" coords="27,52,99,100"/>
+<area shape="rect" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="27,148,99,196"/>
+<area shape="rect" href="dir_000002_000008.html" title="7" alt="" coords="66,122,76,137"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,109,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__map__loader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__map__loader_8h.html">abstract_map_loader.h</a> <a href="abstract__map__loader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:impl_2abstract__mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a> <a href="impl_2abstract__mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:impl_2abstract__robot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a> <a href="impl_2abstract__robot_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:impl_2abstract__robot__element_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a> <a href="impl_2abstract__robot__element_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:impl_2abstract__robot__element__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a> <a href="impl_2abstract__robot__element__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abstract__strategy_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__strategy_8h.html">abstract_strategy.h</a> <a href="abstract__strategy_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base__by__rotation_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base__by__rotation_8h.html">base_by_rotation.h</a> <a href="base__by__rotation_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:collision__helper_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="collision__helper_8h.html">collision_helper.h</a> <a href="collision__helper_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:impl_2field_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2field_8h.html">impl/field.h</a> <a href="impl_2field_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:field__rviz__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="field__rviz__decorator_8h.html">field_rviz_decorator.h</a> <a href="field__rviz__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:map__loader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="map__loader_8h.html">map_loader.h</a> <a href="map__loader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mediator_8h.html">mediator.h</a> <a href="mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__grasp__mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a> <a href="moveit__grasp__mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__mediator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__mediator_8h.html">moveit_mediator.h</a> <a href="moveit__mediator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__robot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__robot_8h.html">moveit_robot.h</a> <a href="moveit__robot_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:robot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot_8h.html">robot.h</a> <a href="robot_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing_8h.html">wing.h</a> <a href="wing_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__moveit__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a> <a href="wing__moveit__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__rviz__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a> <a href="wing__rviz__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.map b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..002e58d9f05ddf11469baaeab639db6bc890461a
--- /dev/null
+++ b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.map
@@ -0,0 +1,6 @@
+<map id="impl" name="impl">
+<area shape="rect" id="node1" href="dir_8f74abbdbad6e793f5da56469e42956a.html" title="impl" alt="" coords="27,52,99,100"/>
+<area shape="rect" id="node2" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="27,148,99,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000002_000008.html" title="7" alt="" coords="66,122,76,137"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,109,111"/>
+</map>
diff --git a/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.md5 b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7ca3b867ecaf530931197e72b31578d7c4209276
--- /dev/null
+++ b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.md5
@@ -0,0 +1 @@
+d67065902c63a5b327c0430ccf0065b2
\ No newline at end of file
diff --git a/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.png b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..019fe365e438abb96e32bd5bdd3e2ddcfe9bd642
Binary files /dev/null and b/doc/html/dir_8f74abbdbad6e793f5da56469e42956a_dep.png differ
diff --git a/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019.html b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019.html
new file mode 100644
index 0000000000000000000000000000000000000000..30af828214eb93ccc9d20c6579e331c7de75b509
--- /dev/null
+++ b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_a96b128c7c6c6ac354ec7533337bc019_dep.png" border="0" usemap="#dir__a96b128c7c6c6ac354ec7533337bc019__dep" alt="robot"/></div>
+<map name="dir__a96b128c7c6c6ac354ec7533337bc019__dep" id="dir__a96b128c7c6c6ac354ec7533337bc019__dep">
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="129,159,247,207"/>
+<area shape="rect" href="dir_000010_000012.html" title="5" alt="" coords="192,133,201,148"/>
+<area shape="rect" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html" title="decorators" alt="" coords="37,63,128,111"/>
+<area shape="rect" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" alt="" coords="27,52,235,121"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,245,132"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_f12c5f90dd7935e249eb6e93c5a0b8ce"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:robot_2abstract__robot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a> <a href="robot_2abstract__robot_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ceti__robot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ceti__robot_8h.html">ceti_robot.h</a> <a href="ceti__robot_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.map b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..33b736b9a30f6628d728d6164839732a41a98966
--- /dev/null
+++ b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.map
@@ -0,0 +1,7 @@
+<map id="robot" name="robot">
+<area shape="rect" id="node3" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="129,159,247,207"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000010_000012.html" title="5" alt="" coords="192,133,201,148"/>
+<area shape="rect" id="node2" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html" title="decorators" alt="" coords="37,63,128,111"/>
+<area shape="rect" id="clust2" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" alt="" coords="27,52,235,121"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,245,132"/>
+</map>
diff --git a/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.md5 b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7997b39769c460fe4390373f017839bffb84b2f2
--- /dev/null
+++ b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.md5
@@ -0,0 +1 @@
+c74ed3b965cb85bc35f7efde27bc7504
\ No newline at end of file
diff --git a/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.png b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..6c8e31a041b076f7e985d133855ac2ca2e5de72c
Binary files /dev/null and b/doc/html/dir_a96b128c7c6c6ac354ec7533337bc019_dep.png differ
diff --git a/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a.html b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d918d336edc441b6894934ea62e110dabccff48
--- /dev/null
+++ b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">decorators Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for decorators:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_a9a3966004e74d386e58ffd98a25c86a_dep.png" border="0" usemap="#dir__a9a3966004e74d386e58ffd98a25c86a__dep" alt="decorators"/></div>
+<map name="dir__a9a3966004e74d386e58ffd98a25c86a__dep" id="dir__a9a3966004e74d386e58ffd98a25c86a__dep">
+<area shape="rect" href="dir_a9a3966004e74d386e58ffd98a25c86a.html" title="decorators" alt="" coords="29,52,120,100"/>
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:robot__element_2decorators_2abstract__robot__element__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">robot_element/decorators/abstract_robot_element_decorator.h</a> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__decorator_8h.html">log_decorator.h</a> <a href="log__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.map b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..eeea3a68af8b8e89ca2abeca9f864d992c84fe4b
--- /dev/null
+++ b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.map
@@ -0,0 +1,4 @@
+<map id="decorators" name="decorators">
+<area shape="rect" id="node1" href="dir_a9a3966004e74d386e58ffd98a25c86a.html" title="decorators" alt="" coords="29,52,120,100"/>
+<area shape="rect" id="clust1" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
diff --git a/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.md5 b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a152afc6209df8fca085a1efc6ea33884fea3198
--- /dev/null
+++ b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.md5
@@ -0,0 +1 @@
+ace2d8734bf3a46ae907866878603703
\ No newline at end of file
diff --git a/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.png b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..3d6f818c5f73ebaf6d2173a5799e8ac749eb6512
Binary files /dev/null and b/doc/html/dir_a9a3966004e74d386e58ffd98a25c86a_dep.png differ
diff --git a/doc/html/dir_ac0d2b250ac9afd645907a18604af17d.html b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d.html
new file mode 100644
index 0000000000000000000000000000000000000000..b8baba1bdec3ae929ebecf5acefa31ef678ba537
--- /dev/null
+++ b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d.html
@@ -0,0 +1,60 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: observers Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">observers Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for observers:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_ac0d2b250ac9afd645907a18604af17d_dep.png" border="0" usemap="#dir__ac0d2b250ac9afd645907a18604af17d__dep" alt="observers"/></div>
+<map name="dir__ac0d2b250ac9afd645907a18604af17d__dep" id="dir__ac0d2b250ac9afd645907a18604af17d__dep">
+<area shape="rect" href="dir_ac0d2b250ac9afd645907a18604af17d.html" title="observers" alt="" coords="31,52,118,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="39,148,111,196"/>
+<area shape="rect" href="dir_000016_000000.html" title="4" alt="" coords="78,122,88,137"/>
+<area shape="rect" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:field_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="field_8cpp.html">field.cpp</a> <a href="field_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__panel_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__panel_8cpp.html">moveit_panel.cpp</a> <a href="moveit__panel_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:panel_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="panel_8cpp.html">panel.cpp</a> <a href="panel_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rviz__panel_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rviz__panel_8cpp.html">rviz_panel.cpp</a> <a href="rviz__panel_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.map b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..6466b43a7fd7e2b6503b2fbb51b7a4ab1426d1b7
--- /dev/null
+++ b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.map
@@ -0,0 +1,6 @@
+<map id="observers" name="observers">
+<area shape="rect" id="node1" href="dir_ac0d2b250ac9afd645907a18604af17d.html" title="observers" alt="" coords="31,52,118,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="39,148,111,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000016_000000.html" title="4" alt="" coords="78,122,88,137"/>
+<area shape="rect" id="clust1" href="dir_4cbbe425e67f14606b10f98426aa0272.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
diff --git a/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.md5 b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0db9f4c84b9b3a091d0edda3ff4e0edc88fcc5e5
--- /dev/null
+++ b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.md5
@@ -0,0 +1 @@
+de93df0e2702aeb6fdba36c172ab013d
\ No newline at end of file
diff --git a/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.png b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..9afa3ea2701bc1e801685b39f67374ab7e432bf8
Binary files /dev/null and b/doc/html/dir_ac0d2b250ac9afd645907a18604af17d_dep.png differ
diff --git a/doc/html/dir_af89b2be539cdaaafaad341d1e56977e.html b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec0526fb9299d4106042987c3cdb9ccbfe4180a5
--- /dev/null
+++ b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e.html
@@ -0,0 +1,68 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: reader Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">reader Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for reader:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_af89b2be539cdaaafaad341d1e56977e_dep.png" border="0" usemap="#dir__af89b2be539cdaaafaad341d1e56977e__dep" alt="reader"/></div>
+<map name="dir__af89b2be539cdaaafaad341d1e56977e__dep" id="dir__af89b2be539cdaaafaad341d1e56977e__dep">
+<area shape="rect" href="dir_af89b2be539cdaaafaad341d1e56977e.html" title="reader" alt="" coords="27,52,99,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="27,148,99,196"/>
+<area shape="rect" href="dir_000007_000000.html" title="8" alt="" coords="66,122,76,137"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,109,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__param__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__param__reader_8cpp.html">abstract_param_reader.cpp</a> <a href="abstract__param__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cuboid__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuboid__reader_8cpp.html">cuboid_reader.cpp</a> <a href="cuboid__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:job__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="job__reader_8cpp.html">job_reader.cpp</a> <a href="job__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:map__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="map__reader_8cpp.html">map_reader.cpp</a> <a href="map__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:robot__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__reader_8cpp.html">robot_reader.cpp</a> <a href="robot__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:task__space__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="task__space__reader_8cpp.html">task_space_reader.cpp</a> <a href="task__space__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ts__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ts__reader_8cpp.html">ts_reader.cpp</a> <a href="ts__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__reader_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__reader_8cpp.html">wing_reader.cpp</a> <a href="wing__reader_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.map b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..8fd72583be12c03c46f9990a3753fa6ac2dcd20c
--- /dev/null
+++ b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.map
@@ -0,0 +1,6 @@
+<map id="reader" name="reader">
+<area shape="rect" id="node1" href="dir_af89b2be539cdaaafaad341d1e56977e.html" title="reader" alt="" coords="27,52,99,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="27,148,99,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000007_000000.html" title="8" alt="" coords="66,122,76,137"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,109,111"/>
+</map>
diff --git a/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.md5 b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0219f2fd570eb752d1e3229fcceedf7521ebf3f2
--- /dev/null
+++ b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.md5
@@ -0,0 +1 @@
+2e2150f3f041a99d72859107e770ab4f
\ No newline at end of file
diff --git a/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.png b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..d1ad5a46a107248b7ade55bfa373c7cc308971f2
Binary files /dev/null and b/doc/html/dir_af89b2be539cdaaafaad341d1e56977e_dep.png differ
diff --git a/doc/html/dir_bff0e0394a2452d575b35258352fd8fb.html b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb.html
new file mode 100644
index 0000000000000000000000000000000000000000..f77da6c73596dac78d66495b2c0e08fb6c836d80
--- /dev/null
+++ b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: base_bridge Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">base_bridge Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for base_bridge:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_bff0e0394a2452d575b35258352fd8fb_dep.png" border="0" usemap="#dir__bff0e0394a2452d575b35258352fd8fb__dep" alt="base_bridge"/></div>
+<map name="dir__bff0e0394a2452d575b35258352fd8fb__dep" id="dir__bff0e0394a2452d575b35258352fd8fb__dep">
+<area shape="rect" href="dir_bff0e0394a2452d575b35258352fd8fb.html" title="base_bridge" alt="" coords="27,52,128,100"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="41,148,113,196"/>
+<area shape="rect" href="dir_000019_000000.html" title="3" alt="" coords="81,122,90,137"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,139,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:simple__base_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="simple__base_8cpp.html">simple_base.cpp</a> <a href="simple__base_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:simple__base__implementation_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="simple__base__implementation_8cpp.html">simple_base_implementation.cpp</a> <a href="simple__base__implementation_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.map b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..0aca889080f1ea1b24e488def5977db5d46c3abc
--- /dev/null
+++ b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.map
@@ -0,0 +1,6 @@
+<map id="base_bridge" name="base_bridge">
+<area shape="rect" id="node1" href="dir_bff0e0394a2452d575b35258352fd8fb.html" title="base_bridge" alt="" coords="27,52,128,100"/>
+<area shape="rect" id="node2" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="41,148,113,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000019_000000.html" title="3" alt="" coords="81,122,90,137"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,139,111"/>
+</map>
diff --git a/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.md5 b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..87966eb9e86364ea9b5f614abdf990c3d0ed67f1
--- /dev/null
+++ b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.md5
@@ -0,0 +1 @@
+b84ca364807ca1282ee80028f68203df
\ No newline at end of file
diff --git a/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.png b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..207cfe395da0f4d3477b95ded6af142b17d30f6b
Binary files /dev/null and b/doc/html/dir_bff0e0394a2452d575b35258352fd8fb_dep.png differ
diff --git a/doc/html/dir_d3e03ffc02fed53d32bf903a9bb2267d.html b/doc/html/dir_d3e03ffc02fed53d32bf903a9bb2267d.html
new file mode 100644
index 0000000000000000000000000000000000000000..cfadf4acca7ec7c9686a873f58ee79d3bb8cb538
--- /dev/null
+++ b/doc/html/dir_d3e03ffc02fed53d32bf903a9bb2267d.html
@@ -0,0 +1,57 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: reader Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">reader Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__param__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__param__reader_8h.html">abstract_param_reader.h</a> <a href="abstract__param__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cuboid__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuboid__reader_8h.html">cuboid_reader.h</a> <a href="cuboid__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:job__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="job__reader_8h.html">job_reader.h</a> <a href="job__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:map__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="map__reader_8h.html">map_reader.h</a> <a href="map__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:robot__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__reader_8h.html">robot_reader.h</a> <a href="robot__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:task__space__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="task__space__reader_8h.html">task_space_reader.h</a> <a href="task__space__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ts__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ts__reader_8h.html">ts_reader.h</a> <a href="ts__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wing__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wing__reader_8h.html">wing_reader.h</a> <a href="wing__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html b/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d7240345ff35193dca2e3bda2b69b766b36adc4
--- /dev/null
+++ b/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: include Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">include Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for include:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_d44c64559bbebec7f509842c48db8b23_dep.png" border="0" usemap="#dir__d44c64559bbebec7f509842c48db8b23__dep" alt="include"/></div>
+<map name="dir__d44c64559bbebec7f509842c48db8b23__dep" id="dir__d44c64559bbebec7f509842c48db8b23__dep">
+<area shape="rect" href="dir_82432a442f7690767534b978fe0f8420.html" title="bridge" alt="" coords="133,27,205,75"/>
+<area shape="rect" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="169,123,241,171"/>
+<area shape="rect" href="dir_000001_000008.html" title="3" alt="" coords="193,95,203,110"/>
+<area shape="rect" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="73,123,145,171"/>
+<area shape="rect" href="dir_000001_000010.html" title="1" alt="" coords="136,105,146,119"/>
+<area shape="rect" href="dir_8f74abbdbad6e793f5da56469e42956a.html" title="impl" alt="" coords="229,27,301,75"/>
+<area shape="rect" href="dir_000002_000008.html" title="7" alt="" coords="232,105,242,119"/>
+<area shape="rect" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html" title="mediator" alt="" coords="27,27,109,75"/>
+<area shape="rect" href="dir_000006_000008.html" title="4" alt="" coords="157,98,166,113"/>
+<area shape="rect" href="dir_000006_000010.html" title="5" alt="" coords="95,95,104,110"/>
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="39,219,156,267"/>
+<area shape="rect" href="dir_000006_000012.html" title="3" alt="" coords="76,191,85,206"/>
+<area shape="rect" href="dir_000010_000012.html" title="5" alt="" coords="106,194,116,209"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" alt="" coords="16,16,408,277"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_82432a442f7690767534b978fe0f8420"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_8f74abbdbad6e793f5da56469e42956a"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_7b0efc06fc22adaf2ca7a380b2f6473b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_d3e03ffc02fed53d32bf903a9bb2267d"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_a96b128c7c6c6ac354ec7533337bc019"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_e1782fda4ea964ce2c8b2efbd0a26038"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.map b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..831df92d56378d211aa8ba5ce760f52ec5b1b2f0
--- /dev/null
+++ b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.map
@@ -0,0 +1,16 @@
+<map id="include" name="include">
+<area shape="rect" id="node2" href="dir_82432a442f7690767534b978fe0f8420.html" title="bridge" alt="" coords="133,27,205,75"/>
+<area shape="rect" id="node5" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html" title="reader" alt="" coords="169,123,241,171"/>
+<area shape="rect" id="edge7-headlabel" href="dir_000001_000008.html" title="3" alt="" coords="193,95,203,110"/>
+<area shape="rect" id="node6" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="73,123,145,171"/>
+<area shape="rect" id="edge6-headlabel" href="dir_000001_000010.html" title="1" alt="" coords="136,105,146,119"/>
+<area shape="rect" id="node3" href="dir_8f74abbdbad6e793f5da56469e42956a.html" title="impl" alt="" coords="229,27,301,75"/>
+<area shape="rect" id="edge2-headlabel" href="dir_000002_000008.html" title="7" alt="" coords="232,105,242,119"/>
+<area shape="rect" id="node4" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html" title="mediator" alt="" coords="27,27,109,75"/>
+<area shape="rect" id="edge5-headlabel" href="dir_000006_000008.html" title="4" alt="" coords="157,98,166,113"/>
+<area shape="rect" id="edge3-headlabel" href="dir_000006_000010.html" title="5" alt="" coords="95,95,104,110"/>
+<area shape="rect" id="node7" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="39,219,156,267"/>
+<area shape="rect" id="edge4-headlabel" href="dir_000006_000012.html" title="3" alt="" coords="76,191,85,206"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000010_000012.html" title="5" alt="" coords="106,194,116,209"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" alt="" coords="16,16,408,277"/>
+</map>
diff --git a/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.md5 b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..3d84780069320e6de201df1e26c84555251c2634
--- /dev/null
+++ b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.md5
@@ -0,0 +1 @@
+6ca3fa910aaa7a935a9aa800e80bbb7a
\ No newline at end of file
diff --git a/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.png b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..73a6d22bfd525c35e994c54dcf78b5dc8b5ef61c
Binary files /dev/null and b/doc/html/dir_d44c64559bbebec7f509842c48db8b23_dep.png differ
diff --git a/doc/html/dir_d623b6b26deaaca15238f927e86bbb46.html b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46.html
new file mode 100644
index 0000000000000000000000000000000000000000..63a9ba5006eb758073ba9fcf53ae5ff90a235027
--- /dev/null
+++ b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for robot:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_d623b6b26deaaca15238f927e86bbb46_dep.png" border="0" usemap="#dir__d623b6b26deaaca15238f927e86bbb46__dep" alt="robot"/></div>
+<map name="dir__d623b6b26deaaca15238f927e86bbb46__dep" id="dir__d623b6b26deaaca15238f927e86bbb46__dep">
+<area shape="rect" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html" title="decorators" alt="" coords="37,63,128,111"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="47,159,119,207"/>
+<area shape="rect" href="dir_000018_000000.html" title="1" alt="" coords="86,133,96,148"/>
+<area shape="rect" href="dir_d623b6b26deaaca15238f927e86bbb46.html" alt="" coords="27,52,235,121"/>
+<area shape="rect" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,245,132"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_213ed5268c3d3b5adb84b79e310ac6b7"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__robot_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__robot_8cpp.html">abstract_robot.cpp</a> <a href="abstract__robot_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ceti__robot_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ceti__robot_8cpp.html">ceti_robot.cpp</a> <a href="ceti__robot_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.map b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..67af5d090c9418f08383945ab81b1c8d4f794367
--- /dev/null
+++ b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.map
@@ -0,0 +1,7 @@
+<map id="robot" name="robot">
+<area shape="rect" id="node2" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html" title="decorators" alt="" coords="37,63,128,111"/>
+<area shape="rect" id="node3" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="47,159,119,207"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000018_000000.html" title="1" alt="" coords="86,133,96,148"/>
+<area shape="rect" id="clust2" href="dir_d623b6b26deaaca15238f927e86bbb46.html" alt="" coords="27,52,235,121"/>
+<area shape="rect" id="clust1" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" title="src" alt="" coords="16,16,245,132"/>
+</map>
diff --git a/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.md5 b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..ffe7355bd294e2e2f59e7870f0b70547870b1917
--- /dev/null
+++ b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.md5
@@ -0,0 +1 @@
+08f39224d8d2ded6a33bab949ef5522d
\ No newline at end of file
diff --git a/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.png b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..3c27d3d3f09401a62915dc2071f67bb38817eb64
Binary files /dev/null and b/doc/html/dir_d623b6b26deaaca15238f927e86bbb46_dep.png differ
diff --git a/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038.html b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038.html
new file mode 100644
index 0000000000000000000000000000000000000000..15973012a4fc0982be9efcc36e195ab22c513907
--- /dev/null
+++ b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_element Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_element Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for robot_element:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.png" border="0" usemap="#dir__e1782fda4ea964ce2c8b2efbd0a26038__dep" alt="robot_element"/></div>
+<map name="dir__e1782fda4ea964ce2c8b2efbd0a26038__dep" id="dir__e1782fda4ea964ce2c8b2efbd0a26038__dep">
+<area shape="rect" href="dir_a9a3966004e74d386e58ffd98a25c86a.html" title="decorators" alt="" coords="149,63,240,111"/>
+<area shape="rect" href="dir_fb8c633076c6fa825500b9de509aef22.html" title="observers" alt="" coords="38,63,125,111"/>
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" alt="" coords="27,52,392,121"/>
+<area shape="rect" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,403,132"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_a9a3966004e74d386e58ffd98a25c86a"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_fb8c633076c6fa825500b9de509aef22"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:robot__element_2abstract__robot__element_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a> <a href="robot__element_2abstract__robot__element_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.map b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..4ab7079cbb7394ec63f6738fc89cf32f13a893a5
--- /dev/null
+++ b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.map
@@ -0,0 +1,6 @@
+<map id="robot_element" name="robot_element">
+<area shape="rect" id="node2" href="dir_a9a3966004e74d386e58ffd98a25c86a.html" title="decorators" alt="" coords="149,63,240,111"/>
+<area shape="rect" id="node3" href="dir_fb8c633076c6fa825500b9de509aef22.html" title="observers" alt="" coords="38,63,125,111"/>
+<area shape="rect" id="clust2" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" alt="" coords="27,52,392,121"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,403,132"/>
+</map>
diff --git a/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.md5 b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..535f329ecc5533409abc02ec46a0c2efd5cafda9
--- /dev/null
+++ b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.md5
@@ -0,0 +1 @@
+2613ff9c309b210991b54c6464b030a6
\ No newline at end of file
diff --git a/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.png b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..b29936735a1a5ace7cbd952c8a1b0e6afd3a1279
Binary files /dev/null and b/doc/html/dir_e1782fda4ea964ce2c8b2efbd0a26038_dep.png differ
diff --git a/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b09ec866b55ed89366781a419850042480fd713
--- /dev/null
+++ b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: decorators Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li><li class="navelem"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">decorators Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for decorators:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.png" border="0" usemap="#dir__f12c5f90dd7935e249eb6e93c5a0b8ce__dep" alt="decorators"/></div>
+<map name="dir__f12c5f90dd7935e249eb6e93c5a0b8ce__dep" id="dir__f12c5f90dd7935e249eb6e93c5a0b8ce__dep">
+<area shape="rect" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html" title="decorators" alt="" coords="27,52,117,100"/>
+<area shape="rect" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="16,16,128,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:abstract__robot__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="abstract__robot__decorator_8h.html">abstract_robot_decorator.h</a> <a href="abstract__robot__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:panda__decorator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="panda__decorator_8h.html">panda_decorator.h</a> <a href="panda__decorator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.map b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..ec19e4b771bec10449b7c1d7719ec112b9c3d7c6
--- /dev/null
+++ b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.map
@@ -0,0 +1,4 @@
+<map id="decorators" name="decorators">
+<area shape="rect" id="node1" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html" title="decorators" alt="" coords="27,52,117,100"/>
+<area shape="rect" id="clust1" href="dir_a96b128c7c6c6ac354ec7533337bc019.html" title="robot" alt="" coords="16,16,128,111"/>
+</map>
diff --git a/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.md5 b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0fe3eab806d116658508648ae341b16c03d1d3c1
--- /dev/null
+++ b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.md5
@@ -0,0 +1 @@
+282f6a6439ae00e529f2a1fe77e6eb9f
\ No newline at end of file
diff --git a/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.png b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..658770ec0e1583aa5888fba2847e9d39bd61719f
Binary files /dev/null and b/doc/html/dir_f12c5f90dd7935e249eb6e93c5a0b8ce_dep.png differ
diff --git a/doc/html/dir_fb8c633076c6fa825500b9de509aef22.html b/doc/html/dir_fb8c633076c6fa825500b9de509aef22.html
new file mode 100644
index 0000000000000000000000000000000000000000..e1cdb3981839c00b0f027e5686c8524d17140626
--- /dev/null
+++ b/doc/html/dir_fb8c633076c6fa825500b9de509aef22.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: observers Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">observers Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for observers:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_fb8c633076c6fa825500b9de509aef22_dep.png" border="0" usemap="#dir__fb8c633076c6fa825500b9de509aef22__dep" alt="observers"/></div>
+<map name="dir__fb8c633076c6fa825500b9de509aef22__dep" id="dir__fb8c633076c6fa825500b9de509aef22__dep">
+<area shape="rect" href="dir_fb8c633076c6fa825500b9de509aef22.html" title="observers" alt="" coords="31,52,118,100"/>
+<area shape="rect" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:robot__element_2observers_2field_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a> <a href="robot__element_2observers_2field_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:moveit__panel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__panel_8h.html">moveit_panel.h</a> <a href="moveit__panel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:panel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="panel_8h.html">panel.h</a> <a href="panel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rviz__panel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rviz__panel_8h.html">rviz_panel.h</a> <a href="rviz__panel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.map b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.map
new file mode 100644
index 0000000000000000000000000000000000000000..29d6a221bd26bf07f5d16a62df829cb3d316c3b9
--- /dev/null
+++ b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.map
@@ -0,0 +1,4 @@
+<map id="observers" name="observers">
+<area shape="rect" id="node1" href="dir_fb8c633076c6fa825500b9de509aef22.html" title="observers" alt="" coords="31,52,118,100"/>
+<area shape="rect" id="clust1" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html" title="robot_element" alt="" coords="16,16,133,111"/>
+</map>
diff --git a/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.md5 b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7cf394c5d552c77f83227880fd3b2786b527132d
--- /dev/null
+++ b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.md5
@@ -0,0 +1 @@
+8d297d15e5fa0c4a1ad80ff9656a3669
\ No newline at end of file
diff --git a/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.png b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.png
new file mode 100644
index 0000000000000000000000000000000000000000..928bdd418661250e8e8da7ac9cb010b807742b57
Binary files /dev/null and b/doc/html/dir_fb8c633076c6fa825500b9de509aef22_dep.png differ
diff --git a/doc/html/doc.png b/doc/html/doc.png
new file mode 100644
index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501
Binary files /dev/null and b/doc/html/doc.png differ
diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css
new file mode 100644
index 0000000000000000000000000000000000000000..73ecbb2cb71e06f284bdca7c932fae9a72f52306
--- /dev/null
+++ b/doc/html/doxygen.css
@@ -0,0 +1,1771 @@
+/* The standard CSS for doxygen 1.8.17 */
+
+body, table, div, p, dl {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+p.reference, p.definition {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+	font-size: 150%;
+}
+
+.title {
+	font: 400 14px/28px Roboto,sans-serif;
+	font-size: 150%;
+	font-weight: bold;
+	margin: 10px 2px;
+}
+
+h2.groupheader {
+	border-bottom: 1px solid #879ECB;
+	color: #354C7B;
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
+}
+
+h3.groupheader {
+	font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px cyan;
+}
+
+dt {
+	font-weight: bold;
+}
+
+ul.multicol {
+	-moz-column-gap: 1em;
+	-webkit-column-gap: 1em;
+	column-gap: 1em;
+	-moz-column-count: 3;
+	-webkit-column-count: 3;
+	column-count: 3;
+}
+
+p.startli, p.startdd {
+	margin-top: 2px;
+}
+
+th p.starttd, p.intertd, p.endtd {
+        font-size: 100%;
+        font-weight: 700;
+}
+
+p.starttd {
+	margin-top: 0px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+p.interli {
+}
+
+p.interdd {
+}
+
+p.intertd {
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+        font-size: 70%;
+        text-align: center;
+}
+
+h3.version {
+        font-size: 90%;
+        text-align: center;
+}
+
+div.qindex, div.navtab{
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+}
+
+div.qindex, div.navpath {
+	width: 100%;
+	line-height: 140%;
+}
+
+div.navtab {
+	margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+	color: #3D578C;
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: #4665A2;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+a.qindex {
+	font-weight: bold;
+}
+
+a.qindexHL {
+	font-weight: bold;
+	background-color: #9CAFD4;
+	color: #FFFFFF;
+	border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+        color: #FFFFFF;
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+	color: #4665A2; 
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+	color: #4665A2; 
+}
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+ul {
+  overflow: hidden; /*Fixed: list item bullets overlap floating elements*/
+}
+
+#side-nav ul {
+  overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */
+}
+
+#main-nav ul {
+  overflow: visible; /* reset ul rule for the navigation bar drop down lists */
+}
+
+.fragment {
+  text-align: left;
+  direction: ltr;
+  overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/
+  overflow-y: hidden;
+}
+
+pre.fragment {
+        border: 1px solid #C4CFE5;
+        background-color: #FBFCFD;
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+        overflow: auto;
+        word-wrap: break-word;
+        font-size:  9pt;
+        line-height: 125%;
+        font-family: monospace, fixed;
+        font-size: 105%;
+}
+
+div.fragment {
+  padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/
+  margin: 4px 8px 4px 2px;
+	background-color: #FBFCFD;
+	border: 1px solid #C4CFE5;
+}
+
+div.line {
+	font-family: monospace, fixed;
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.0;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+div.line:after {
+    content:"\000A";
+    white-space: pre;
+}
+
+div.line.glow {
+	background-color: cyan;
+	box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+	padding-right: 4px;
+	text-align: right;
+	border-right: 2px solid #0F0;
+	background-color: #E8E8E8;
+        white-space: pre;
+}
+span.lineno a {
+	background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+	background-color: #C8C8C8;
+}
+
+.lineno {
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+div.ah, span.ah {
+	background-color: black;
+	font-weight: bold;
+	color: #FFFFFF;
+	margin-bottom: 3px;
+	margin-top: 3px;
+	padding: 0.2em;
+	border: solid thin #333;
+	border-radius: 0.5em;
+	-webkit-border-radius: .5em;
+	-moz-border-radius: .5em;
+	box-shadow: 2px 2px 3px #999;
+	-webkit-box-shadow: 2px 2px 3px #999;
+	-moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+	background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+	background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
+}
+
+div.classindex ul {
+        list-style: none;
+        padding-left: 0;
+}
+
+div.classindex span.ai {
+        display: inline-block;
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	background-color: white;
+	color: black;
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 12px;
+	margin-right: 8px;
+}
+
+td.indexkey {
+	background-color: #EBEFF6;
+	font-weight: bold;
+	border: 1px solid #C4CFE5;
+	margin: 2px 0px 2px 0;
+	padding: 2px 10px;
+        white-space: nowrap;
+        vertical-align: top;
+}
+
+td.indexvalue {
+	background-color: #EBEFF6;
+	border: 1px solid #C4CFE5;
+	padding: 2px 10px;
+	margin: 2px 0px;
+}
+
+tr.memlist {
+	background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.formulaDsp {
+	
+}
+
+img.formulaInl, img.inline {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: #008000
+}
+
+span.keywordtype {
+	color: #604020
+}
+
+span.keywordflow {
+	color: #e08000
+}
+
+span.comment {
+	color: #800000
+}
+
+span.preprocessor {
+	color: #806020
+}
+
+span.stringliteral {
+	color: #002080
+}
+
+span.charliteral {
+	color: #008080
+}
+
+span.vhdldigit { 
+	color: #ff00ff 
+}
+
+span.vhdlchar { 
+	color: #000000 
+}
+
+span.vhdlkeyword { 
+	color: #700070 
+}
+
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+blockquote {
+        background-color: #F7F8FB;
+        border-left: 2px solid #9CAFD4;
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
+}
+
+blockquote.DocNodeRTL {
+   border-left: 0;
+   border-right: 2px solid #9CAFD4;
+   margin: 0 4px 0 24px;
+   padding: 0 16px 0 12px;
+}
+
+/* @end */
+
+/*
+.search {
+	color: #003399;
+	font-weight: bold;
+}
+
+form.search {
+	margin-bottom: 0px;
+	margin-top: 0px;
+}
+
+input.search {
+	font-size: 75%;
+	color: #000080;
+	font-weight: normal;
+	background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+	background: #EBEFF6;
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: cyan;
+	box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: #F9FAFC;
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: #555;
+}
+
+.memSeparator {
+        border-bottom: 1px solid #DEE4F0;
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memItemRight, .memTemplItemRight {
+	width: 100%;
+}
+
+.memTemplParams {
+	color: #4665A2;
+        white-space: nowrap;
+	font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtitle {
+	padding: 8px;
+	border-top: 1px solid #A8B8D9;
+	border-left: 1px solid #A8B8D9;
+	border-right: 1px solid #A8B8D9;
+	border-top-right-radius: 4px;
+	border-top-left-radius: 4px;
+	margin-bottom: -1px;
+	background-image: url('nav_f.png');
+	background-repeat: repeat-x;
+	background-color: #E2E8F2;
+	line-height: 1.25;
+	font-weight: 300;
+	float:left;
+}
+
+.permalink
+{
+        font-size: 65%;
+        display: inline-block;
+        vertical-align: middle;
+}
+
+.memtemplate {
+	font-size: 80%;
+	color: #4665A2;
+	font-weight: normal;
+	margin-left: 9px;
+}
+
+.memnav {
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	margin-right: 15px;
+	padding: 2px;
+}
+
+.mempage {
+	width: 100%;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+        font-weight: 400;
+        margin-left: 6px;
+}
+
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+        border-top: 1px solid #A8B8D9;
+        border-left: 1px solid #A8B8D9;
+        border-right: 1px solid #A8B8D9;
+        padding: 6px 0px 6px 0px;
+        color: #253555;
+        font-weight: bold;
+        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        background-color: #DFE5F1;
+        /* opera specific markup */
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        border-top-right-radius: 4px;
+        /* firefox specific markup */
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        -moz-border-radius-topright: 4px;
+        /* webkit specific markup */
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        -webkit-border-top-right-radius: 4px;
+
+}
+
+.overload {
+        font-family: "courier new",courier,monospace;
+	font-size: 65%;
+}
+
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 6px 10px 2px 10px;
+        background-color: #FBFCFD;
+        border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: #FFFFFF;
+        /* opera specific markup */
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+}
+
+.paramname {
+	color: #602020;
+	white-space: nowrap;
+}
+.paramname em {
+	font-style: normal;
+}
+.paramname code {
+        line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+        margin-left: 0px;
+        padding-left: 0px;
+}       
+
+.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname {
+        font-weight: bold;
+        vertical-align: top;
+}
+        
+.params .paramtype, .tparams .paramtype {
+        font-style: italic;
+        vertical-align: top;
+}       
+        
+.params .paramdir, .tparams .paramdir {
+        font-family: "courier new",courier,monospace;
+        vertical-align: top;
+}
+
+table.mlabels {
+	border-spacing: 0px;
+}
+
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
+
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
+
+span.mlabels {
+        margin-left: 8px;
+}
+
+span.mlabel {
+        background-color: #728DC1;
+        border-top:1px solid #5373B4;
+        border-left:1px solid #5373B4;
+        border-right:1px solid #C4CFE5;
+        border-bottom:1px solid #C4CFE5;
+	text-shadow: none;
+	color: white;
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid #9CAFD4;
+        border-bottom: 1px solid #9CAFD4;
+        width: 100%;
+}
+
+.directory table {
+        border-collapse:collapse;
+}
+
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
+}
+
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
+	padding-top: 3px;
+}
+
+.directory td.entry a {
+        outline:none;
+}
+
+.directory td.entry a img {
+        border: none;
+}
+
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+	padding-left: 6px;
+	background-color: #F7F8FB;
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
+}
+
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: #3D578C;
+}
+
+.arrow {
+    color: #9CAFD4;
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+    cursor: pointer;
+    font-size: 80%;
+    display: inline-block;
+    width: 16px;
+    height: 22px;
+}
+
+.icon {
+    font-family: Arial, Helvetica;
+    font-weight: bold;
+    font-size: 12px;
+    height: 14px;
+    width: 16px;
+    display: inline-block;
+    background-color: #728DC1;
+    color: white;
+    text-align: center;
+    border-radius: 4px;
+    margin-left: 2px;
+    margin-right: 2px;
+}
+
+.icona {
+    width: 24px;
+    height: 22px;
+    display: inline-block;
+}
+
+.iconfopen {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderopen.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.iconfclosed {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderclosed.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.icondoc {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('doc.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+table.directory {
+    font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+        margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+address {
+	font-style: normal;
+	color: #2A3D61;
+}
+
+table.doxtable caption {
+	caption-side: top;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+table.fieldtable {
+        /*width: 100%;*/
+        margin-bottom: 10px;
+        border: 1px solid #A8B8D9;
+        border-spacing: 0px;
+        -moz-border-radius: 4px;
+        -webkit-border-radius: 4px;
+        border-radius: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+        white-space: nowrap;
+        border-right: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+        padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid #A8B8D9;
+        /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 0px;
+}       
+        
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        font-size: 90%;
+        color: #253555;
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        font-weight: 400;
+        -moz-border-radius-topleft: 4px;
+        -moz-border-radius-topright: 4px;
+        -webkit-border-top-left-radius: 4px;
+        -webkit-border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: url('tab_b.png');
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image:url('tab_b.png');
+	background-repeat:repeat-x;
+	background-position: 0 -5px;
+	height:30px;
+	line-height:30px;
+	color:#8AA0CC;
+	border:solid 1px #C2CDE4;
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right:15px;
+	background-image:url('bc_s.png');
+	background-repeat:no-repeat;
+	background-position:right;
+	color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+	height:32px;
+	display:block;
+	text-decoration: none;
+	outline: none;
+	color: #283A5D;
+	font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+	text-decoration: none;        
+}
+
+.navpath li.navelem a:hover
+{
+	color:#6884BD;
+}
+
+.navpath li.footer
+{
+        list-style-type:none;
+        float:right;
+        padding-left:10px;
+        padding-right:15px;
+        background-image:none;
+        background-repeat:no-repeat;
+        background-position:right;
+        color:#364D7C;
+        font-size: 8pt;
+}
+
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}       
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+table.classindex
+{
+        margin: 10px;
+        white-space: nowrap;
+        margin-left: 3%;
+        margin-right: 3%;
+        width: 94%;
+        border: 0;
+        border-spacing: 0; 
+        padding: 0;
+}
+
+div.ingroups
+{
+	font-size: 8pt;
+	width: 50%;
+	text-align: left;
+}
+
+div.ingroups a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image:url('nav_h.png');
+        background-repeat:repeat-x;
+	background-color: #F9FAFC;
+	margin:  0px;
+	border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
+.PageDocRTL-title div.headertitle {
+  text-align: right;
+  direction: rtl;
+}
+
+dl {
+        padding: 0 0 0 0;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */
+dl.section {
+	margin-left: 0px;
+	padding-left: 0px;
+}
+
+dl.section.DocNodeRTL {
+  margin-right: 0px;
+  padding-right: 0px;
+}
+
+dl.note {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #D0C000;
+}
+
+dl.note.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #D0C000;
+}
+
+dl.warning, dl.attention {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #FF0000;
+}
+
+dl.warning.DocNodeRTL, dl.attention.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00D000;
+}
+
+dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #00D000;
+}
+
+dl.deprecated {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #505050;
+}
+
+dl.deprecated.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #505050;
+}
+
+dl.todo {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00C0E0;
+}
+
+dl.todo.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #00C0E0;
+}
+
+dl.test {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #3030E0;
+}
+
+dl.test.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #3030E0;
+}
+
+dl.bug {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #C08050;
+}
+
+dl.bug.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #C08050;
+}
+
+dl.section dd {
+	margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+	text-align: center;
+	vertical-align: bottom;
+	border-collapse: separate;
+}
+ 
+#projectlogo img
+{ 
+	border: 0px none;
+}
+ 
+#projectalign
+{
+        vertical-align: middle;
+}
+
+#projectname
+{
+	font: 300% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 2px 0px;
+}
+    
+#projectbrief
+{
+	font: 120% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#projectnumber
+{
+	font: 50% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#titlearea
+{
+	padding: 0px;
+	margin: 0px;
+	width: 100%;
+	border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+        text-align: center;
+}
+
+.dotgraph
+{
+        text-align: center;
+}
+
+.mscgraph
+{
+        text-align: center;
+}
+
+.plantumlgraph
+{
+        text-align: center;
+}
+
+.diagraph
+{
+        text-align: center;
+}
+
+.caption
+{
+	font-weight: bold;
+}
+
+div.zoom
+{
+	border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+        margin-bottom:50px;
+}
+
+dl.citelist dt {
+        color:#334975;
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+}
+
+dl.citelist dd {
+        margin:2px 0;
+        padding:5px 0;
+}
+
+div.toc {
+        padding: 14px 25px;
+        background-color: #F4F6FA;
+        border: 1px solid #D8DFEE;
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 8px 10px 10px;
+        width: 200px;
+}
+
+.PageDocRTL-title div.toc {
+  float: left !important;
+  text-align: right;
+}
+
+div.toc li {
+        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+.PageDocRTL-title div.toc li {
+  background-position-x: right !important;
+  padding-left: 0 !important;
+  padding-right: 10px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+	color: #4665A2;
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}       
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.level2 {
+        margin-left: 15px;
+}
+
+div.toc li.level3 {
+        margin-left: 30px;
+}
+
+div.toc li.level4 {
+        margin-left: 45px;
+}
+
+.PageDocRTL-title div.toc li.level1 {
+  margin-left: 0 !important;
+  margin-right: 0;
+}
+
+.PageDocRTL-title div.toc li.level2 {
+  margin-left: 0 !important;
+  margin-right: 15px;
+}
+
+.PageDocRTL-title div.toc li.level3 {
+  margin-left: 0 !important;
+  margin-right: 30px;
+}
+
+.PageDocRTL-title div.toc li.level4 {
+  margin-left: 0 !important;
+  margin-right: 45px;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: gray;
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+        position: absolute;
+        display: none;
+}
+
+#powerTip {
+	cursor: default;
+	white-space: nowrap;
+	background-color: white;
+	border: 1px solid gray;
+	border-radius: 4px 4px 4px 4px;
+	box-shadow: 1px 1px 7px gray;
+	display: none;
+	font-size: smaller;
+	max-width: 80%;
+	opacity: 0.9;
+	padding: 1ex 1em 1em;
+	position: absolute;
+	z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+        color: grey;
+	font-style: italic;
+}
+
+#powerTip div.ttname a {
+        font-weight: bold;
+}
+
+#powerTip div.ttname {
+        font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+        color: #006318;
+}
+
+#powerTip div {
+        margin: 0px;
+        padding: 0px;
+        font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+	content: "";
+	position: absolute;
+	margin: 0px;
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.w:after,  #powerTip.w:before,
+#powerTip.e:after,  #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	border: solid transparent;
+	content: " ";
+	height: 0;
+	width: 0;
+	position: absolute;
+}
+
+#powerTip.n:after,  #powerTip.s:after,
+#powerTip.w:after,  #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+	border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before,  #powerTip.s:before,
+#powerTip.w:before,  #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+	border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+	top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+	border-top-color: #FFFFFF;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+#powerTip.n:before {
+	border-top-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+	left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+	right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+	left: 14px;
+}
+
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+	border-bottom-color: #FFFFFF;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+	border-bottom-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+	left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+	right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+	left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+	left: 100%;
+}
+#powerTip.e:after {
+	border-left-color: #FFFFFF;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.e:before {
+	border-left-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+	right: 100%;
+}
+#powerTip.w:after {
+	border-right-color: #FFFFFF;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.w:before {
+	border-right-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+@media print
+{
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
+/* @group Markdown */
+
+/*
+table.markdownTable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.markdownTableHead tr {
+}
+
+table.markdownTableBodyLeft td, table.markdownTable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+th.markdownTableHeadLeft {
+	text-align: left
+}
+
+th.markdownTableHeadRight {
+	text-align: right
+}
+
+th.markdownTableHeadCenter {
+	text-align: center
+}
+*/
+
+table.markdownTable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.markdownTable tr {
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+th.markdownTableHeadLeft, td.markdownTableBodyLeft {
+	text-align: left
+}
+
+th.markdownTableHeadRight, td.markdownTableBodyRight {
+	text-align: right
+}
+
+th.markdownTableHeadCenter, td.markdownTableBodyCenter {
+	text-align: center
+}
+
+.DocNodeRTL {
+  text-align: right;
+  direction: rtl;
+}
+
+.DocNodeLTR {
+  text-align: left;
+  direction: ltr;
+}
+
+table.DocNodeRTL {
+   width: auto;
+   margin-right: 0;
+   margin-left: auto;
+}
+
+table.DocNodeLTR {
+   width: auto;
+   margin-right: auto;
+   margin-left: 0;
+}
+
+tt, code, kbd, samp
+{
+  display: inline-block;
+  direction:ltr; 
+}
+/* @end */
+
+u {
+	text-decoration: underline;
+}
+
diff --git a/doc/html/doxygen.png b/doc/html/doxygen.png
new file mode 100644
index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1
Binary files /dev/null and b/doc/html/doxygen.png differ
diff --git a/doc/html/dynsections.js b/doc/html/dynsections.js
new file mode 100644
index 0000000000000000000000000000000000000000..c8e84aaa6f6e05af6f2f5c70055938319d21ab55
--- /dev/null
+++ b/doc/html/dynsections.js
@@ -0,0 +1,127 @@
+/*
+ @licstart  The following is the entire license notice for the
+ JavaScript code in this file.
+
+ Copyright (C) 1997-2017 by Dimitri van Heesch
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ @licend  The above is the entire license notice
+ for the JavaScript code in this file
+ */
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+   content.hide();
+   summary.show();
+   $(linkObj).addClass('closed').removeClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+   content.show();
+   summary.hide();
+   $(linkObj).removeClass('closed').addClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+  $('table.directory tr').
+       removeClass('even').filter(':visible:even').addClass('even');
+}
+
+function toggleLevel(level)
+{
+  $('table.directory tr').each(function() {
+    var l = this.id.split('_').length-1;
+    var i = $('#img'+this.id.substring(3));
+    var a = $('#arr'+this.id.substring(3));
+    if (l<level+1) {
+      i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+      a.html('&#9660;');
+      $(this).show();
+    } else if (l==level+1) {
+      i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+      a.html('&#9658;');
+      $(this).show();
+    } else {
+      $(this).hide();
+    }
+  });
+  updateStripes();
+}
+
+function toggleFolder(id)
+{
+  // the clicked row
+  var currentRow = $('#row_'+id);
+
+  // all rows after the clicked row
+  var rows = currentRow.nextAll("tr");
+
+  var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+  // only match elements AFTER this one (can't hide elements before)
+  var childRows = rows.filter(function() { return this.id.match(re); });
+
+  // first row is visible we are HIDING
+  if (childRows.filter(':first').is(':visible')===true) {
+    // replace down arrow by right arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    currentRowSpans.filter(".arrow").html('&#9658;');
+    rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+  } else { // we are SHOWING
+    // replace right arrow by down arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+    currentRowSpans.filter(".arrow").html('&#9660;');
+    // replace down arrows by right arrows for child rows
+    var childRowsSpans = childRows.find("span");
+    childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    childRowsSpans.filter(".arrow").html('&#9658;');
+    childRows.show(); //show all children
+  }
+  updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+  var rows = $('tr.inherit.'+id);
+  var img = $('tr.inherit_header.'+id+' img');
+  var src = $(img).attr('src');
+  if (rows.filter(':first').is(':visible')===true) {
+    rows.css('display','none');
+    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+  } else {
+    rows.css('display','table-row'); // using show() causes jump in firefox
+    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+  }
+}
+/* @license-end */
+
+$(document).ready(function() {
+  $('.code,.codeRef').each(function() {
+    $(this).data('powertip',$('#a'+$(this).attr('href').replace(/.*\//,'').replace(/[^a-z_A-Z0-9]/g,'_')).html());
+    $(this).powerTip({ placement: 's', smartPlacement: true, mouseOnToPopup: true });
+  });
+});
diff --git a/doc/html/field_8cpp.html b/doc/html/field_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..0f23e39801f0bf5f91909bde0212593889056ddc
--- /dev/null
+++ b/doc/html/field_8cpp.html
@@ -0,0 +1,52 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">field.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="robot__element_2observers_2field_8h_source.html">robot_element/observers/field.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for field.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="field_8cpp__incl.png" border="0" usemap="#field_8cpp" alt=""/></div>
+<map name="field_8cpp" id="field_8cpp">
+<area shape="rect" title=" " alt="" coords="68,5,147,32"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="15,80,200,121"/>
+<area shape="rect" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,169,257,211"/>
+<area shape="rect" title=" " alt="" coords="108,259,307,285"/>
+</map>
+</div>
+</div>
+<p><a href="field_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/field_8cpp__incl.map b/doc/html/field_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..37206e7bfaf775d51c82b63c6b19312c5de26e20
--- /dev/null
+++ b/doc/html/field_8cpp__incl.map
@@ -0,0 +1,7 @@
+<map id="field.cpp" name="field.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="68,5,147,32"/>
+<area shape="rect" id="node2" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="15,80,200,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" id="node4" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,169,257,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="108,259,307,285"/>
+</map>
diff --git a/doc/html/field_8cpp__incl.md5 b/doc/html/field_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..43cd7fc47823f56a873ab6cd4dd863004558df2b
--- /dev/null
+++ b/doc/html/field_8cpp__incl.md5
@@ -0,0 +1 @@
+fbab4541c200158eb87f15944ee1c18b
\ No newline at end of file
diff --git a/doc/html/field_8cpp__incl.png b/doc/html/field_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f17f3a4b888954ff7b7227ef75c6b04f1d9b6af9
Binary files /dev/null and b/doc/html/field_8cpp__incl.png differ
diff --git a/doc/html/field_8cpp_source.html b/doc/html/field_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f87ad5366581b5d11cbb3b83ecbeec84d97d3e89
--- /dev/null
+++ b/doc/html/field_8cpp_source.html
@@ -0,0 +1,44 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">field.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="field_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2observers_2field_8h.html">robot_element/observers/field.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<a class="code" href="classField.html#a3937b0953056acede15814ada1053f9a">Field::Field</a>(tf2::Transform tf) </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;: <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>(tf, <span class="stringliteral">&quot;&quot;</span>, tf2::Vector3(0,0,0)){}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassField_html_a3937b0953056acede15814ada1053f9a"><div class="ttname"><a href="classField.html#a3937b0953056acede15814ada1053f9a">Field::Field</a></div><div class="ttdeci">Field(tf2::Transform tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00009">impl/field.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="arobot__element_2observers_2field_8h_html"><div class="ttname"><a href="robot__element_2observers_2field_8h.html">field.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/field__rviz__decorator_8cpp.html b/doc/html/field__rviz__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..3ba49d939b36f79f4b4f1eaf9470d67db84c82c5
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8cpp.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field_rviz_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">field_rviz_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="field__rviz__decorator_8h_source.html">impl/field_rviz_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for field_rviz_decorator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="field__rviz__decorator_8cpp__incl.png" border="0" usemap="#field__rviz__decorator_8cpp" alt=""/></div>
+<map name="field__rviz__decorator_8cpp" id="field__rviz__decorator_8cpp">
+<area shape="rect" title=" " alt="" coords="66,5,245,32"/>
+<area shape="rect" href="field__rviz__decorator_8h.html" title=" " alt="" coords="58,80,254,107"/>
+<area shape="rect" title=" " alt="" coords="43,341,122,367"/>
+<area shape="rect" title=" " alt="" coords="340,155,486,196"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="30,162,126,189"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="151,155,315,196"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="158,244,308,285"/>
+<area shape="rect" title=" " alt="" coords="324,341,523,367"/>
+<area shape="rect" title=" " alt="" coords="153,333,300,375"/>
+</map>
+</div>
+</div>
+<p><a href="field__rviz__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/field__rviz__decorator_8cpp__incl.map b/doc/html/field__rviz__decorator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..a35beaa4ebcdeb32dbc1eefce9ba2132ac726c8d
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8cpp__incl.map
@@ -0,0 +1,11 @@
+<map id="field_rviz_decorator.cpp" name="field_rviz_decorator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="66,5,245,32"/>
+<area shape="rect" id="node2" href="$field__rviz__decorator_8h.html" title=" " alt="" coords="58,80,254,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="43,341,122,367"/>
+<area shape="rect" id="node4" title=" " alt="" coords="340,155,486,196"/>
+<area shape="rect" id="node5" href="$impl_2field_8h.html" title=" " alt="" coords="30,162,126,189"/>
+<area shape="rect" id="node9" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="151,155,315,196"/>
+<area shape="rect" id="node6" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="158,244,308,285"/>
+<area shape="rect" id="node7" title=" " alt="" coords="324,341,523,367"/>
+<area shape="rect" id="node8" title=" " alt="" coords="153,333,300,375"/>
+</map>
diff --git a/doc/html/field__rviz__decorator_8cpp__incl.md5 b/doc/html/field__rviz__decorator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f8aadd30d8a5d4af09a47de6b29d4bd0b2236271
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8cpp__incl.md5
@@ -0,0 +1 @@
+edffca6815e969334624d894b63fc396
\ No newline at end of file
diff --git a/doc/html/field__rviz__decorator_8cpp__incl.png b/doc/html/field__rviz__decorator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0ce5033a4d4c7d6036a61cb74e5eb6a96a710b2d
Binary files /dev/null and b/doc/html/field__rviz__decorator_8cpp__incl.png differ
diff --git a/doc/html/field__rviz__decorator_8cpp_source.html b/doc/html/field__rviz__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..dd8cc67c07dfaa0ba50cbef98fef068c19f0d269
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8cpp_source.html
@@ -0,0 +1,84 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field_rviz_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">field_rviz_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="field__rviz__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="field__rviz__decorator_8h.html">impl/field_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator::update</a>(tf2::Transform&amp; tf) {</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a>(tf);</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <a class="code" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">output_filter</a>();</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">    8</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Field_rviz_decorator::input_filter</a>(tf2::Transform&amp; tf) {}</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">   10</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator::output_filter</a>() {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classField.html">Field</a>* field = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classField.html">Field</a>*<span class="keyword">&gt;</span> (<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    tf2::Vector3 world_origin = field-&gt;<a class="code" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">world_tf</a>().getOrigin();</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    tf2::Quaternion world_quat = field-&gt;<a class="code" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">world_tf</a>().getRotation().normalized();</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    marker.ns = <span class="stringliteral">&quot;fiels&quot;</span>;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    marker.id = *((<span class="keywordtype">int</span>*)(&amp;<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    marker.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    marker.pose.position.x = world_origin.getX();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    marker.pose.position.y = world_origin.getY();</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    marker.pose.position.z = 0;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    marker.pose.orientation.x = world_quat.getX();</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    marker.pose.orientation.y = world_quat.getY();</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    marker.pose.orientation.z = world_quat.getZ();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    marker.pose.orientation.w = world_quat.getW();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    marker.scale.x = 0.4f;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    marker.scale.y = 0.4f;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    marker.scale.z = 0.01f;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    marker.color.r = 0.7;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    marker.color.g = 0.7;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    marker.color.b = 0.7;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    marker.color.a = 1.0; <span class="comment">// Don&#39;t forget to set the alpha!</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a>-&gt;markers.push_back(marker);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassField_html_a769e61adfbb8e8b261da88fab1190f4d"><div class="ttname"><a href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">Field::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00017">robot_element/observers/field.h:17</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_a9ea2d91d648a270d3a3a1853d14ccfe6"><div class="ttname"><a href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8cpp_source.html#l00010">field_rviz_decorator.cpp:10</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_ad524be1ab9385b0f0e1a91c794ce2a94"><div class="ttname"><a href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">Field_rviz_decorator::markers_</a></div><div class="ttdeci">visualization_msgs::MarkerArray * markers_</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00011">field_rviz_decorator.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">impl/abstract_robot_element_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="afield__rviz__decorator_8h_html"><div class="ttname"><a href="field__rviz__decorator_8h.html">field_rviz_decorator.h</a></div></div>
+<div class="ttc" id="aclassField_html"><div class="ttname"><a href="classField.html">Field</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00007">impl/field.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_abf15c56ecefe976950818f7418ad47d4"><div class="ttname"><a href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8cpp_source.html#l00003">field_rviz_decorator.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/field__rviz__decorator_8h.html b/doc/html/field__rviz__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ae19730f75563ccebf3964893797f2f3ec11e6ab
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field_rviz_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">field_rviz_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;visualization_msgs/Marker.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2field_8h_source.html">impl/field.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for field_rviz_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="field__rviz__decorator_8h__incl.png" border="0" usemap="#field__rviz__decorator_8h" alt=""/></div>
+<map name="field__rviz__decorator_8h" id="field__rviz__decorator_8h">
+<area shape="rect" title=" " alt="" coords="74,5,237,32"/>
+<area shape="rect" title=" " alt="" coords="43,266,122,293"/>
+<area shape="rect" title=" " alt="" coords="340,80,486,121"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="30,87,126,114"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="151,80,315,121"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="158,169,308,211"/>
+<area shape="rect" title=" " alt="" coords="324,266,523,293"/>
+<area shape="rect" title=" " alt="" coords="153,259,300,300"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="field__rviz__decorator_8h__dep__incl.png" border="0" usemap="#field__rviz__decorator_8hdep" alt=""/></div>
+<map name="field__rviz__decorator_8hdep" id="field__rviz__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="80,5,243,32"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" href="field__rviz__decorator_8cpp.html" title=" " alt="" coords="163,80,341,107"/>
+</map>
+</div>
+</div>
+<p><a href="field__rviz__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField__rviz__decorator.html">Field_rviz_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/field__rviz__decorator_8h__dep__incl.map b/doc/html/field__rviz__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..e76fb5c45380cc438cd06dac19506d06fea0e3c9
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="field_rviz_decorator.h" name="field_rviz_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="80,5,243,32"/>
+<area shape="rect" id="node2" href="$base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" id="node3" href="$field__rviz__decorator_8cpp.html" title=" " alt="" coords="163,80,341,107"/>
+</map>
diff --git a/doc/html/field__rviz__decorator_8h__dep__incl.md5 b/doc/html/field__rviz__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1b7520c5029916ec50b38b4a60acbd960c4558cc
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+8e294b6c9c97af4262e86f51c883a972
\ No newline at end of file
diff --git a/doc/html/field__rviz__decorator_8h__dep__incl.png b/doc/html/field__rviz__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b4ce18bb7d3b6c78d8bc938f043ef2d6726293ce
Binary files /dev/null and b/doc/html/field__rviz__decorator_8h__dep__incl.png differ
diff --git a/doc/html/field__rviz__decorator_8h__incl.map b/doc/html/field__rviz__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..45628ea7f580e9d684ec12a5ec3f4ea1ffd1ff56
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h__incl.map
@@ -0,0 +1,10 @@
+<map id="field_rviz_decorator.h" name="field_rviz_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="74,5,237,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="43,266,122,293"/>
+<area shape="rect" id="node3" title=" " alt="" coords="340,80,486,121"/>
+<area shape="rect" id="node4" href="$impl_2field_8h.html" title=" " alt="" coords="30,87,126,114"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="151,80,315,121"/>
+<area shape="rect" id="node5" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="158,169,308,211"/>
+<area shape="rect" id="node6" title=" " alt="" coords="324,266,523,293"/>
+<area shape="rect" id="node7" title=" " alt="" coords="153,259,300,300"/>
+</map>
diff --git a/doc/html/field__rviz__decorator_8h__incl.md5 b/doc/html/field__rviz__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9f202c3dd8fc4b8faf33174f8c6106c21e68c039
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h__incl.md5
@@ -0,0 +1 @@
+36aadd6f49558f81083f1596230c22d3
\ No newline at end of file
diff --git a/doc/html/field__rviz__decorator_8h__incl.png b/doc/html/field__rviz__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ca4f9e8527bf805856ca383dbbe5938b46f9fdab
Binary files /dev/null and b/doc/html/field__rviz__decorator_8h__incl.png differ
diff --git a/doc/html/field__rviz__decorator_8h_source.html b/doc/html/field__rviz__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6272b5fbf94291380c933e5e3e8f032bb6766f4b
--- /dev/null
+++ b/doc/html/field__rviz__decorator_8h_source.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field_rviz_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">field_rviz_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="field__rviz__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef FIELD_RVIZ_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define FIELD_RVIZ_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;visualization_msgs/Marker.h&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2field_8h.html">impl/field.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html">    9</a></span>&#160;<span class="keyword">class </span><a class="code" href="classField__rviz__decorator.html">Field_rviz_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>{</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">   11</a></span>&#160;    visualization_msgs::MarkerArray* <a class="code" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">   15</a></span>&#160;    <a class="code" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>, visualization_msgs::MarkerArray* <a class="code" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>) : <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>(<a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>), <a class="code" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a>(<a class="code" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>){};</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">   17</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">set_markers</a>(visualization_msgs::MarkerArray* <a class="code" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>) { <a class="code" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a>= <a class="code" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>;}</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">   18</a></span>&#160;    <span class="keyword">inline</span> visualization_msgs::MarkerArray* <a class="code" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">markers</a>() { <span class="keywordflow">return</span> <a class="code" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">markers_</a>;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">output_filter</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;};</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aimpl_2field_8h_html"><div class="ttname"><a href="impl_2field_8h.html">field.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_a9ea2d91d648a270d3a3a1853d14ccfe6"><div class="ttname"><a href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8cpp_source.html#l00010">field_rviz_decorator.cpp:10</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_ad524be1ab9385b0f0e1a91c794ce2a94"><div class="ttname"><a href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">Field_rviz_decorator::markers_</a></div><div class="ttdeci">visualization_msgs::MarkerArray * markers_</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00011">field_rviz_decorator.h:11</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_aa88d9d5da860369d94420f6db716016c"><div class="ttname"><a href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator::Field_rviz_decorator</a></div><div class="ttdeci">Field_rviz_decorator(Abstract_robot_element *next, visualization_msgs::MarkerArray *markers)</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00015">field_rviz_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_a16d7d4e68c53db336c4d2a9f032adff7"><div class="ttname"><a href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">Field_rviz_decorator::set_markers</a></div><div class="ttdeci">void set_markers(visualization_msgs::MarkerArray *markers)</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00017">field_rviz_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html"><div class="ttname"><a href="classField__rviz__decorator.html">Field_rviz_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00009">field_rviz_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_abf6af7cbe66c0fc31443bbdba78005b3"><div class="ttname"><a href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">Field_rviz_decorator::markers</a></div><div class="ttdeci">visualization_msgs::MarkerArray * markers()</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8h_source.html#l00018">field_rviz_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassField__rviz__decorator_html_abf15c56ecefe976950818f7418ad47d4"><div class="ttname"><a href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="field__rviz__decorator_8cpp_source.html#l00003">field_rviz_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/files.html b/doc/html/files.html
new file mode 100644
index 0000000000000000000000000000000000000000..36b49593a2110db2754a22fbaf19bfea13f2c458
--- /dev/null
+++ b/doc/html/files.html
@@ -0,0 +1,118 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">File List</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__base_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__base_8h.html" target="_self">abstract_base.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__base__implementation_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__base__implementation_8h.html" target="_self">abstract_base_implementation.h</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__map__loader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__map__loader_8h.html" target="_self">abstract_map_loader.h</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2abstract__mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2abstract__mediator_8cpp.html" target="_self">impl/abstract_mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="mediator_2abstract__mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="mediator_2abstract__mediator_8cpp.html" target="_self">mediator/abstract_mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2abstract__mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2abstract__mediator_8h.html" target="_self">impl/abstract_mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="mediator_2abstract__mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="mediator_2abstract__mediator_8h.html" target="_self">mediator/abstract_mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__param__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__param__reader_8cpp.html" target="_self">abstract_param_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__param__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__param__reader_8h.html" target="_self">abstract_param_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__robot_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__robot_8cpp.html" target="_self">abstract_robot.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2abstract__robot_8h_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2abstract__robot_8h.html" target="_self">impl/abstract_robot.h</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot_2abstract__robot_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot_2abstract__robot_8h.html" target="_self">robot/abstract_robot.h</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__robot__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__robot__decorator_8h.html" target="_self">abstract_robot_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2abstract__robot__element_8h_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2abstract__robot__element_8h.html" target="_self">impl/abstract_robot_element.h</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__element_2abstract__robot__element_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot__element_2abstract__robot__element_8h.html" target="_self">robot_element/abstract_robot_element.h</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__robot__element__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__robot__element__decorator_8cpp.html" target="_self">abstract_robot_element_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2abstract__robot__element__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2abstract__robot__element__decorator_8h.html" target="_self">impl/abstract_robot_element_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" target="_self">robot_element/decorators/abstract_robot_element_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="abstract__strategy_8h_source.html"><span class="icondoc"></span></a><a class="el" href="abstract__strategy_8h.html" target="_self">abstract_strategy.h</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="base__by__rotation_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="base__by__rotation_8cpp.html" target="_self">base_by_rotation.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="base__by__rotation_8h_source.html"><span class="icondoc"></span></a><a class="el" href="base__by__rotation_8h.html" target="_self">base_by_rotation.h</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="base__calculation__mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="base__calculation__mediator_8cpp.html" target="_self">base_calculation_mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="base__calculation__mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="base__calculation__mediator_8h.html" target="_self">base_calculation_mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="base__routine_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="base__routine_8cpp.html" target="_self">base_routine.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="cell__routine_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="cell__routine_8cpp.html" target="_self">cell_routine.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ceti__robot_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="ceti__robot_8cpp.html" target="_self">ceti_robot.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ceti__robot_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ceti__robot_8h.html" target="_self">ceti_robot.h</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="collision__helper_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="collision__helper_8cpp.html" target="_self">collision_helper.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="collision__helper_8h_source.html"><span class="icondoc"></span></a><a class="el" href="collision__helper_8h.html" target="_self">collision_helper.h</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="cuboid__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="cuboid__reader_8cpp.html" target="_self">cuboid_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="cuboid__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="cuboid__reader_8h.html" target="_self">cuboid_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="field_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="field_8cpp.html" target="_self">field.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="impl_2field_8h_source.html"><span class="icondoc"></span></a><a class="el" href="impl_2field_8h.html" target="_self">impl/field.h</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__element_2observers_2field_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot__element_2observers_2field_8h.html" target="_self">robot_element/observers/field.h</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="field__rviz__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="field__rviz__decorator_8cpp.html" target="_self">field_rviz_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_35_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="field__rviz__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="field__rviz__decorator_8h.html" target="_self">field_rviz_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="grasp__cell__routine_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="grasp__cell__routine_8cpp.html" target="_self">grasp_cell_routine.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_37_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="job__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="job__reader_8cpp.html" target="_self">job_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="job__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="job__reader_8h.html" target="_self">job_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="log__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="log__decorator_8cpp.html" target="_self">log_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="log__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="log__decorator_8h.html" target="_self">log_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_41_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="map__loader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="map__loader_8cpp.html" target="_self">map_loader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="map__loader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="map__loader_8h.html" target="_self">map_loader.h</a></td><td class="desc"></td></tr>
+<tr id="row_43_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="map__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="map__reader_8cpp.html" target="_self">map_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="map__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="map__reader_8h.html" target="_self">map_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_45_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="mediator_8cpp.html" target="_self">mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="mediator_8h.html" target="_self">mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_47_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__grasp__mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__grasp__mediator_8cpp.html" target="_self">moveit_grasp_mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__grasp__mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__grasp__mediator_8h.html" target="_self">moveit_grasp_mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_49_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__mediator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__mediator_8cpp.html" target="_self">moveit_mediator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__mediator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__mediator_8h.html" target="_self">moveit_mediator.h</a></td><td class="desc"></td></tr>
+<tr id="row_51_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__panel_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__panel_8cpp.html" target="_self">moveit_panel.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__panel_8h_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__panel_8h.html" target="_self">moveit_panel.h</a></td><td class="desc"></td></tr>
+<tr id="row_53_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="moveit__robot_8h_source.html"><span class="icondoc"></span></a><a class="el" href="moveit__robot_8h.html" target="_self">moveit_robot.h</a></td><td class="desc"></td></tr>
+<tr id="row_54_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="mtc2taskspace_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="mtc2taskspace_8cpp.html" target="_self">mtc2taskspace.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_55_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="panda__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="panda__decorator_8cpp.html" target="_self">panda_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_56_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="panda__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="panda__decorator_8h.html" target="_self">panda_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_57_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="panel_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="panel_8cpp.html" target="_self">panel.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_58_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="panel_8h_source.html"><span class="icondoc"></span></a><a class="el" href="panel_8h.html" target="_self">panel.h</a></td><td class="desc"></td></tr>
+<tr id="row_59_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="robot_8cpp.html" target="_self">robot.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_60_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot_8h.html" target="_self">robot.h</a></td><td class="desc"></td></tr>
+<tr id="row_61_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__base__calculation__approach_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="robot__base__calculation__approach_8cpp.html" target="_self">robot_base_calculation_approach.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_62_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="robot__reader_8cpp.html" target="_self">robot_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_63_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="robot__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="robot__reader_8h.html" target="_self">robot_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_64_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rviz__panel_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="rviz__panel_8cpp.html" target="_self">rviz_panel.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_65_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rviz__panel_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rviz__panel_8h.html" target="_self">rviz_panel.h</a></td><td class="desc"></td></tr>
+<tr id="row_66_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="simple__base_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="simple__base_8cpp.html" target="_self">simple_base.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_67_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="simple__base_8h_source.html"><span class="icondoc"></span></a><a class="el" href="simple__base_8h.html" target="_self">simple_base.h</a></td><td class="desc"></td></tr>
+<tr id="row_68_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="simple__base__implementation_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="simple__base__implementation_8cpp.html" target="_self">simple_base_implementation.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_69_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="simple__base__implementation_8h_source.html"><span class="icondoc"></span></a><a class="el" href="simple__base__implementation_8h.html" target="_self">simple_base_implementation.h</a></td><td class="desc"></td></tr>
+<tr id="row_70_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="task__space__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="task__space__reader_8cpp.html" target="_self">task_space_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_71_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="task__space__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="task__space__reader_8h.html" target="_self">task_space_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_72_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ts__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="ts__reader_8cpp.html" target="_self">ts_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_73_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ts__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="ts__reader_8h.html" target="_self">ts_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_74_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing_8h_source.html"><span class="icondoc"></span></a><a class="el" href="wing_8h.html" target="_self">wing.h</a></td><td class="desc"></td></tr>
+<tr id="row_75_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__moveit__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="wing__moveit__decorator_8cpp.html" target="_self">wing_moveit_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_76_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__moveit__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="wing__moveit__decorator_8h.html" target="_self">wing_moveit_decorator.h</a></td><td class="desc"></td></tr>
+<tr id="row_77_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__reader_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="wing__reader_8cpp.html" target="_self">wing_reader.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_78_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__reader_8h_source.html"><span class="icondoc"></span></a><a class="el" href="wing__reader_8h.html" target="_self">wing_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_79_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__rviz__decorator_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="wing__rviz__decorator_8cpp.html" target="_self">wing_rviz_decorator.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_80_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="wing__rviz__decorator_8h_source.html"><span class="icondoc"></span></a><a class="el" href="wing__rviz__decorator_8h.html" target="_self">wing_rviz_decorator.h</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/folderclosed.png b/doc/html/folderclosed.png
new file mode 100644
index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66
Binary files /dev/null and b/doc/html/folderclosed.png differ
diff --git a/doc/html/folderopen.png b/doc/html/folderopen.png
new file mode 100644
index 0000000000000000000000000000000000000000..d6c7f676a3b3ef8c2c307d319dff3c6a604eb227
Binary files /dev/null and b/doc/html/folderopen.png differ
diff --git a/doc/html/functions.html b/doc/html/functions.html
new file mode 100644
index 0000000000000000000000000000000000000000..93f2051e36c21542cac991c126d556768f306073
--- /dev/null
+++ b/doc/html/functions.html
@@ -0,0 +1,86 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>Abstract_base()
+: <a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a>
+</li>
+<li>Abstract_base_implementation()
+: <a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a>
+</li>
+<li>Abstract_map_loader()
+: <a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a>
+</li>
+<li>Abstract_mediator()
+: <a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>
+</li>
+<li>Abstract_param_reader()
+: <a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>
+</li>
+<li>Abstract_robot()
+: <a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>
+</li>
+<li>Abstract_robot_decorator()
+: <a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a>
+</li>
+<li>Abstract_robot_element()
+: <a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>
+</li>
+<li>Abstract_robot_element_decorator()
+: <a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>
+</li>
+<li>Abstract_strategy()
+: <a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a>
+</li>
+<li>access_fields()
+: <a class="el" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">Robot</a>
+</li>
+<li>access_fields_
+: <a class="el" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">Ceti_robot</a>
+, <a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">Robot</a>
+</li>
+<li>acm_
+: <a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">Moveit_mediator</a>
+</li>
+<li>add_coll_markers()
+: <a class="el" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">Robot</a>
+</li>
+<li>approximation()
+: <a class="el" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">Mediator</a>
+</li>
+<li>area_calculation()
+: <a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot</a>
+, <a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">Robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_b.html b/doc/html/functions_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6873a8a2019ef08cabfb8d7996e4a16b7744b89
--- /dev/null
+++ b/doc/html/functions_b.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>Base_by_rotation()
+: <a class="el" href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation</a>
+</li>
+<li>base_calculation()
+: <a class="el" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">Abstract_map_loader</a>
+, <a class="el" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader</a>
+, <a class="el" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base</a>
+</li>
+<li>Base_calculation_mediator()
+: <a class="el" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator</a>
+</li>
+<li>bounds()
+: <a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">Ceti_robot</a>
+, <a class="el" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">Field</a>
+, <a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">Panel</a>
+, <a class="el" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">Wing</a>
+</li>
+<li>bounds_
+: <a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element</a>
+, <a class="el" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">Wing</a>
+</li>
+<li>build_wings()
+: <a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_c.html b/doc/html/functions_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0a4538003310e9b5f2293b0ec266fab5c86255b
--- /dev/null
+++ b/doc/html/functions_c.html
@@ -0,0 +1,112 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>calc_world_tf()
+: <a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element</a>
+</li>
+<li>calculate()
+: <a class="el" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">Mediator</a>
+</li>
+<li>cartesian_planner_
+: <a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">Moveit_mediator</a>
+</li>
+<li>Ceti_robot()
+: <a class="el" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot</a>
+</li>
+<li>check_collision()
+: <a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator</a>
+</li>
+<li>check_robot_collision()
+: <a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot</a>
+</li>
+<li>check_single_object_collision()
+: <a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot</a>
+</li>
+<li>cloud_calculation()
+: <a class="el" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">Abstract_strategy</a>
+, <a class="el" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation</a>
+</li>
+<li>coll_markers()
+: <a class="el" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">Robot</a>
+</li>
+<li>coll_markers_
+: <a class="el" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">Robot</a>
+</li>
+<li>collision_detector()
+: <a class="el" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper</a>
+</li>
+<li>Collision_helper()
+: <a class="el" href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper</a>
+</li>
+<li>connect_robots()
+: <a class="el" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator</a>
+</li>
+<li>create_pcl_box()
+: <a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">Abstract_map_loader</a>
+</li>
+<li>create_Task()
+: <a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">Moveit_mediator</a>
+</li>
+<li>cuboid_bin()
+: <a class="el" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">Cuboid_reader</a>
+</li>
+<li>cuboid_box_
+: <a class="el" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">Cuboid_reader</a>
+</li>
+<li>cuboid_obstacle()
+: <a class="el" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">Cuboid_reader</a>
+</li>
+<li>cuboid_obstacle_
+: <a class="el" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">Cuboid_reader</a>
+</li>
+<li>Cuboid_reader()
+: <a class="el" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader</a>
+</li>
+<li>cuboid_reader_
+: <a class="el" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">Moveit_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_d.html b/doc/html/functions_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..53eee2ff80c5a360a792caad470d8f3a8594eb0f
--- /dev/null
+++ b/doc/html/functions_d.html
@@ -0,0 +1,45 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>dirname()
+: <a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">Abstract_mediator</a>
+</li>
+<li>dirname_
+: <a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator</a>
+</li>
+<li>drop_off_data()
+: <a class="el" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">Ts_reader</a>
+</li>
+<li>drop_off_data_
+: <a class="el" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">Ts_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_f.html b/doc/html/functions_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..dc93b2792f7743ff9250c287a1e8fcade73b0f60
--- /dev/null
+++ b/doc/html/functions_f.html
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>Field()
+: <a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>
+</li>
+<li>Field_rviz_decorator()
+: <a class="el" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator</a>
+</li>
+<li>float_of()
+: <a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..5a71c18fc6b1b0411d3b0d6a152fce2570a6ca31
--- /dev/null
+++ b/doc/html/functions_func.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>Abstract_base()
+: <a class="el" href="classAbstract__base.html#a68300edaeff45edafe777bc4f7be2433">Abstract_base</a>
+</li>
+<li>Abstract_base_implementation()
+: <a class="el" href="classAbstract__base__implementation.html#aefda2aa1684b1d8f5db48e999db2e05b">Abstract_base_implementation</a>
+</li>
+<li>Abstract_map_loader()
+: <a class="el" href="classAbstract__map__loader.html#a408d265bc42bdbb25b2db44b9533e668">Abstract_map_loader</a>
+</li>
+<li>Abstract_mediator()
+: <a class="el" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>
+</li>
+<li>Abstract_param_reader()
+: <a class="el" href="classAbstract__param__reader.html#a734c0833347f6d686f280031b3219de0">Abstract_param_reader</a>
+</li>
+<li>Abstract_robot()
+: <a class="el" href="classAbstract__robot.html#ac94e9d3520fdbcd027682226f4b0be8f">Abstract_robot</a>
+</li>
+<li>Abstract_robot_decorator()
+: <a class="el" href="classAbstract__robot__decorator.html#a9049f28e67b6457114a2b575587de4d4">Abstract_robot_decorator</a>
+</li>
+<li>Abstract_robot_element()
+: <a class="el" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>
+</li>
+<li>Abstract_robot_element_decorator()
+: <a class="el" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>
+</li>
+<li>Abstract_strategy()
+: <a class="el" href="classAbstract__strategy.html#accc89e872cb004dc89a51996b8038f5a">Abstract_strategy</a>
+</li>
+<li>access_fields()
+: <a class="el" href="classCeti__robot.html#a4ad187750675fbe7ba8ded55f2c0e3b7">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">Robot</a>
+</li>
+<li>add_coll_markers()
+: <a class="el" href="classCeti__robot.html#a85afa4e99b4d31282a0b1e7cba45176c">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab333a4150395873d947c791996171510">Robot</a>
+</li>
+<li>approximation()
+: <a class="el" href="classBase__calculation__mediator.html#aa03bb145649933b2b362dfc8966f63c8">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">Mediator</a>
+</li>
+<li>area_calculation()
+: <a class="el" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot</a>
+, <a class="el" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">Robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_b.html b/doc/html/functions_func_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..c596ff5a44736612c3532fbc5a1795ceaa9b7c76
--- /dev/null
+++ b/doc/html/functions_func_b.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>Base_by_rotation()
+: <a class="el" href="classBase__by__rotation.html#aaf73fbd91908d8b3681e0d6c595bb858">Base_by_rotation</a>
+</li>
+<li>base_calculation()
+: <a class="el" href="classAbstract__base.html#a205a26b0fb0e75b2ea3a442cdc0926b2">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a9fdca9d4a86d66a712194e409d799eff">Abstract_map_loader</a>
+, <a class="el" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader</a>
+, <a class="el" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base</a>
+</li>
+<li>Base_calculation_mediator()
+: <a class="el" href="classBase__calculation__mediator.html#acf5ce9f5f854708b8b2a7008d75d0330">Base_calculation_mediator</a>
+</li>
+<li>bounds()
+: <a class="el" href="classAbstract__robot.html#a52c63e180b0a31cd9b97b824eb1b5c22">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a889edd0d57abce0f6c2a6bc14bcbee6e">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#a2bca93f0ea688ce45a50b06edae104df">Ceti_robot</a>
+, <a class="el" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">Field</a>
+, <a class="el" href="classPanel.html#af4477404926c93431f4c369d36e945d6">Panel</a>
+, <a class="el" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">Wing</a>
+</li>
+<li>build_wings()
+: <a class="el" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#aff019cc13f25228abaf99b4a3fe72c38">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_c.html b/doc/html/functions_func_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..3be843449be7f1cd094f638b613ae0643e780b41
--- /dev/null
+++ b/doc/html/functions_func_c.html
@@ -0,0 +1,95 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>calc_world_tf()
+: <a class="el" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element</a>
+</li>
+<li>calculate()
+: <a class="el" href="classBase__calculation__mediator.html#a55975e58dfc863db246224217367c645">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">Mediator</a>
+</li>
+<li>Ceti_robot()
+: <a class="el" href="classCeti__robot.html#ade0920ab43886af89a431f7808207efd">Ceti_robot</a>
+</li>
+<li>check_collision()
+: <a class="el" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a2f29ef22d330020bf276cb709c8c8238">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator</a>
+</li>
+<li>check_robot_collision()
+: <a class="el" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot</a>
+</li>
+<li>check_single_object_collision()
+: <a class="el" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ad0c58aab1a4758916e8b448f83b1eec7">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a128b5891d5519855c387dd0fd3b04384">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot</a>
+</li>
+<li>cloud_calculation()
+: <a class="el" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">Abstract_strategy</a>
+, <a class="el" href="classBase__by__rotation.html#a910ed8dac159764f4b045f07c7ac2372">Base_by_rotation</a>
+</li>
+<li>coll_markers()
+: <a class="el" href="classCeti__robot.html#aa12e1de6f139604143bb19b34abbfaeb">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">Robot</a>
+</li>
+<li>collision_detector()
+: <a class="el" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper</a>
+</li>
+<li>Collision_helper()
+: <a class="el" href="classCollision__helper.html#a1637a6d6db9a3a3458ab0eec053c5d9a">Collision_helper</a>
+</li>
+<li>connect_robots()
+: <a class="el" href="classAbstract__mediator.html#aec722e2a7493b29b04b613b800883cf9">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a6804ea3a11a66faf3bcf0429fd016d06">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator</a>
+</li>
+<li>create_pcl_box()
+: <a class="el" href="classAbstract__base.html#a4f721d18ef125fe286eeb7978fc499ba">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">Abstract_map_loader</a>
+</li>
+<li>create_Task()
+: <a class="el" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">Moveit_mediator</a>
+</li>
+<li>cuboid_bin()
+: <a class="el" href="classCuboid__reader.html#a3f80a47bd3b32eb3daaa7ee4c9dbd670">Cuboid_reader</a>
+</li>
+<li>cuboid_obstacle()
+: <a class="el" href="classCuboid__reader.html#a499edb06157aac6287cdf683b0316a8b">Cuboid_reader</a>
+</li>
+<li>Cuboid_reader()
+: <a class="el" href="classCuboid__reader.html#a23a0d80e92f06c576ee242239f27a68f">Cuboid_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_d.html b/doc/html/functions_func_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..74bf655c85929976687df2719777ba69d8c341fd
--- /dev/null
+++ b/doc/html/functions_func_d.html
@@ -0,0 +1,39 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>dirname()
+: <a class="el" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">Abstract_mediator</a>
+</li>
+<li>drop_off_data()
+: <a class="el" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">Ts_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_f.html b/doc/html/functions_func_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..c0cd800fbdf21468f6186644faf33f3b7cda622b
--- /dev/null
+++ b/doc/html/functions_func_f.html
@@ -0,0 +1,42 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>Field()
+: <a class="el" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>
+</li>
+<li>Field_rviz_decorator()
+: <a class="el" href="classField__rviz__decorator.html#aa88d9d5da860369d94420f6db716016c">Field_rviz_decorator</a>
+</li>
+<li>float_of()
+: <a class="el" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_g.html b/doc/html/functions_func_g.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b632268f4fd76d3607bd8c69fea0537ab3b244e
--- /dev/null
+++ b/doc/html/functions_func_g.html
@@ -0,0 +1,53 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>generate_access_fields()
+: <a class="el" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">Robot</a>
+</li>
+<li>generate_Ground()
+: <a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">Mediator</a>
+</li>
+<li>generate_grounds()
+: <a class="el" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">Base_calculation_mediator</a>
+</li>
+<li>generateRandomCuboid()
+: <a class="el" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">Moveit_grasp_mediator</a>
+</li>
+<li>getIKSolution()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">Moveit_grasp_mediator</a>
+</li>
+<li>grasp_map_generator()
+: <a class="el" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">Moveit_robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_i.html b/doc/html/functions_func_i.html
new file mode 100644
index 0000000000000000000000000000000000000000..e86580fbfcf74680bdbf358998f60f40e4538449
--- /dev/null
+++ b/doc/html/functions_func_i.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>implementation()
+: <a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">Abstract_base</a>
+</li>
+<li>in_collision()
+: <a class="el" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot</a>
+</li>
+<li>input_filter()
+: <a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">Wing_rviz_decorator</a>
+</li>
+<li>inv_map()
+: <a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">Abstract_map_loader</a>
+</li>
+<li>inv_map_creation()
+: <a class="el" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">Abstract_base_implementation</a>
+, <a class="el" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">Abstract_strategy</a>
+, <a class="el" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation</a>
+, <a class="el" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation</a>
+</li>
+<li>isStateValid()
+: <a class="el" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_j.html b/doc/html/functions_func_j.html
new file mode 100644
index 0000000000000000000000000000000000000000..1cf31e5f4a2d45302c804278e80802c6b4ca35ac
--- /dev/null
+++ b/doc/html/functions_func_j.html
@@ -0,0 +1,36 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_j"></a>- j -</h3><ul>
+<li>Job_reader()
+: <a class="el" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_l.html b/doc/html/functions_func_l.html
new file mode 100644
index 0000000000000000000000000000000000000000..c278f75451a3fcf8e147c618dca48e52daf3f494
--- /dev/null
+++ b/doc/html/functions_func_l.html
@@ -0,0 +1,36 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>Log_decorator()
+: <a class="el" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_m.html b/doc/html/functions_func_m.html
new file mode 100644
index 0000000000000000000000000000000000000000..73c99f11bd1738f2dac6bd5e43487e8d39275dd5
--- /dev/null
+++ b/doc/html/functions_func_m.html
@@ -0,0 +1,97 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>manipulate_grasp_data()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">Moveit_grasp_mediator</a>
+</li>
+<li>manipulate_mapspace()
+: <a class="el" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">Moveit_grasp_mediator</a>
+</li>
+<li>map()
+: <a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">Abstract_map_loader</a>
+, <a class="el" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">Moveit_robot</a>
+</li>
+<li>map_data()
+: <a class="el" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">Map_reader</a>
+</li>
+<li>Map_loader()
+: <a class="el" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader</a>
+</li>
+<li>Map_reader()
+: <a class="el" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader</a>
+</li>
+<li>marker()
+: <a class="el" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">Moveit_panel</a>
+, <a class="el" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">Rviz_panel</a>
+</li>
+<li>markers()
+: <a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">Wing_rviz_decorator</a>
+</li>
+<li>mediate()
+: <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator</a>
+</li>
+<li>Mediator()
+: <a class="el" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator</a>
+</li>
+<li>merge_acm()
+: <a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">Moveit_mediator</a>
+</li>
+<li>merge_ps()
+: <a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">Moveit_mediator</a>
+</li>
+<li>mgi()
+: <a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">Moveit_mediator</a>
+, <a class="el" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">Moveit_robot</a>
+</li>
+<li>mgi_hand()
+: <a class="el" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">Moveit_robot</a>
+</li>
+<li>Moveit_grasp_mediator()
+: <a class="el" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator</a>
+</li>
+<li>Moveit_mediator()
+: <a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a>
+</li>
+<li>Moveit_panel()
+: <a class="el" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel</a>
+</li>
+<li>Moveit_robot()
+: <a class="el" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_n.html b/doc/html/functions_func_n.html
new file mode 100644
index 0000000000000000000000000000000000000000..cbfce6822d0a3e091ec77f72f734bbf91da7ddaf
--- /dev/null
+++ b/doc/html/functions_func_n.html
@@ -0,0 +1,53 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">Ceti_robot</a>
+, <a class="el" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">Field</a>
+, <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel</a>
+, <a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing</a>
+</li>
+<li>next()
+: <a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator</a>
+</li>
+<li>notify()
+: <a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_o.html b/doc/html/functions_func_o.html
new file mode 100644
index 0000000000000000000000000000000000000000..cadfbe4833b96a37294548e4fc57a17a9b7bffc8
--- /dev/null
+++ b/doc/html/functions_func_o.html
@@ -0,0 +1,48 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>observer_mask()
+: <a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">Ceti_robot</a>
+</li>
+<li>observers()
+: <a class="el" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">Ceti_robot</a>
+, <a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot</a>
+</li>
+<li>output_filter()
+: <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_p.html b/doc/html/functions_func_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..37448585ea23cca4648087a2495bb017d264b725
--- /dev/null
+++ b/doc/html/functions_func_p.html
@@ -0,0 +1,55 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>Panda_decorator()
+: <a class="el" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator</a>
+</li>
+<li>Panel()
+: <a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>
+</li>
+<li>parallel_exec()
+: <a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator</a>
+</li>
+<li>planFullGrasp()
+: <a class="el" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">Moveit_grasp_mediator</a>
+</li>
+<li>planPreApproach()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">Moveit_grasp_mediator</a>
+</li>
+<li>publish()
+: <a class="el" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">Mediator</a>
+</li>
+<li>publish_tables()
+: <a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_r.html b/doc/html/functions_func_r.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa3740b4177a2d13562558ee272909a24b5a7bd5
--- /dev/null
+++ b/doc/html/functions_func_r.html
@@ -0,0 +1,92 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>read()
+: <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>
+, <a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader</a>
+, <a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader</a>
+, <a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader</a>
+, <a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader</a>
+, <a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader</a>
+, <a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader</a>
+, <a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader</a>
+</li>
+<li>register_observers()
+: <a class="el" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot</a>
+</li>
+<li>relative_tf()
+: <a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">Abstract_robot_element</a>
+</li>
+<li>reset()
+: <a class="el" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">Ceti_robot</a>
+, <a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot</a>
+</li>
+<li>result_vector()
+: <a class="el" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">Abstract_mediator</a>
+</li>
+<li>rewrite_task_template()
+: <a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">Moveit_mediator</a>
+</li>
+<li>Robot()
+: <a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a>
+</li>
+<li>robot_data()
+: <a class="el" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">Job_reader</a>
+, <a class="el" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">Robot_reader</a>
+</li>
+<li>robot_reader()
+: <a class="el" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">Base_calculation_mediator</a>
+</li>
+<li>Robot_reader()
+: <a class="el" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader</a>
+</li>
+<li>robot_root_bounds()
+: <a class="el" href="classAbstract__robot.html#a62093041e9154e06ed573a42a76cc778">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">Ceti_robot</a>
+</li>
+<li>robots()
+: <a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">Abstract_mediator</a>
+</li>
+<li>root_tf()
+: <a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">Ceti_robot</a>
+</li>
+<li>rotate()
+: <a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">Abstract_robot</a>
+</li>
+<li>Rviz_panel()
+: <a class="el" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_s.html b/doc/html/functions_func_s.html
new file mode 100644
index 0000000000000000000000000000000000000000..03c4ef107cc9e1459b39e41330ebd70790d5373c
--- /dev/null
+++ b/doc/html/functions_func_s.html
@@ -0,0 +1,170 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>scene_setup()
+: <a class="el" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">Moveit_grasp_mediator</a>
+</li>
+<li>set_cuboid_bin_data()
+: <a class="el" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">Cuboid_reader</a>
+</li>
+<li>set_cuboid_obstacle_data()
+: <a class="el" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">Cuboid_reader</a>
+</li>
+<li>set_dirname()
+: <a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">Abstract_mediator</a>
+</li>
+<li>set_drop_off_data()
+: <a class="el" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">Ts_reader</a>
+</li>
+<li>set_grasp_map_generator()
+: <a class="el" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">Moveit_robot</a>
+</li>
+<li>set_grasp_orientations()
+: <a class="el" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">Abstract_base_implementation</a>
+, <a class="el" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation</a>
+</li>
+<li>set_implementation()
+: <a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">Abstract_base</a>
+</li>
+<li>set_inv_map()
+: <a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">Abstract_map_loader</a>
+</li>
+<li>set_job_data()
+: <a class="el" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">Job_reader</a>
+</li>
+<li>set_map()
+: <a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">Abstract_map_loader</a>
+</li>
+<li>set_map_data()
+: <a class="el" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">Map_reader</a>
+</li>
+<li>set_markers()
+: <a class="el" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">Wing_rviz_decorator</a>
+</li>
+<li>set_name()
+: <a class="el" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">Field</a>
+, <a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">Panel</a>
+, <a class="el" href="classWing.html#a59974ceb515b29cab964aba4314a8885">Wing</a>
+</li>
+<li>set_observer_mask()
+: <a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">Ceti_robot</a>
+</li>
+<li>set_panel()
+: <a class="el" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">Base_calculation_mediator</a>
+</li>
+<li>set_relative_tf()
+: <a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">Abstract_robot_element</a>
+</li>
+<li>set_result_vector()
+: <a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">Abstract_mediator</a>
+</li>
+<li>set_robot_data()
+: <a class="el" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">Robot_reader</a>
+</li>
+<li>set_set()
+: <a class="el" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">Field</a>
+, <a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">Panel</a>
+, <a class="el" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">Wing</a>
+</li>
+<li>set_strategy()
+: <a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">Abstract_map_loader</a>
+</li>
+<li>set_target_cloud()
+: <a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">Abstract_map_loader</a>
+</li>
+<li>set_target_rot()
+: <a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">Abstract_map_loader</a>
+</li>
+<li>set_task_grasps()
+: <a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">Abstract_map_loader</a>
+</li>
+<li>set_task_space()
+: <a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">Abstract_base</a>
+</li>
+<li>set_tasks()
+: <a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">Moveit_mediator</a>
+</li>
+<li>set_tf()
+: <a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">Abstract_robot</a>
+</li>
+<li>set_wing_data()
+: <a class="el" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">Wing_reader</a>
+</li>
+<li>set_wings()
+: <a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator</a>
+</li>
+<li>set_world_tf()
+: <a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">Abstract_robot_element</a>
+</li>
+<li>setup_rviz()
+: <a class="el" href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">Mediator</a>
+</li>
+<li>setup_task()
+: <a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">Moveit_mediator</a>
+</li>
+<li>Simple_base()
+: <a class="el" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base</a>
+</li>
+<li>Simple_base_implementation()
+: <a class="el" href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation</a>
+</li>
+<li>size()
+: <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot</a>
+, <a class="el" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">Field</a>
+, <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel</a>
+, <a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">Wing</a>
+</li>
+<li>spezifie_robot_groups()
+: <a class="el" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">Abstract_robot_decorator</a>
+, <a class="el" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator</a>
+</li>
+<li>spezifie_root_bounds()
+: <a class="el" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">Abstract_robot_decorator</a>
+, <a class="el" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator</a>
+</li>
+<li>strategy()
+: <a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">Abstract_map_loader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_t.html b/doc/html/functions_func_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..dc29c12c790f5445021651244808b6edc951e2ce
--- /dev/null
+++ b/doc/html/functions_func_t.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>target_cloud()
+: <a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">Abstract_map_loader</a>
+</li>
+<li>target_rot()
+: <a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">Abstract_map_loader</a>
+</li>
+<li>task_grasps()
+: <a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader</a>
+</li>
+<li>task_map()
+: <a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">Moveit_mediator</a>
+</li>
+<li>task_planner()
+: <a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">Moveit_mediator</a>
+</li>
+<li>task_space()
+: <a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">Abstract_base</a>
+</li>
+<li>Task_space_reader()
+: <a class="el" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader</a>
+</li>
+<li>tf()
+: <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot</a>
+</li>
+<li>translate()
+: <a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">Abstract_robot</a>
+</li>
+<li>Ts_reader()
+: <a class="el" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_u.html b/doc/html/functions_func_u.html
new file mode 100644
index 0000000000000000000000000000000000000000..4ddfd284d79c0e05b90116231f820e212e82ef68
--- /dev/null
+++ b/doc/html/functions_func_u.html
@@ -0,0 +1,46 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>update()
+: <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>
+, <a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>
+, <a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel</a>
+, <a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel</a>
+, <a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel</a>
+, <a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">Wing</a>
+, <a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_v.html b/doc/html/functions_func_v.html
new file mode 100644
index 0000000000000000000000000000000000000000..bccd8890454ebfc3e80cd024595c2375dddd019b
--- /dev/null
+++ b/doc/html/functions_func_v.html
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>vector_to_cloud()
+: <a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#accf269f067ad74db3e291289a96a71cc">Mediator</a>
+</li>
+<li>visualizePick()
+: <a class="el" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">Moveit_grasp_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_w.html b/doc/html/functions_func_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..75c57aaf6e46a580e9d269e2762312e7fd59cb09
--- /dev/null
+++ b/doc/html/functions_func_w.html
@@ -0,0 +1,82 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>waitForNextStep()
+: <a class="el" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator</a>
+</li>
+<li>wing()
+: <a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator</a>
+</li>
+<li>Wing()
+: <a class="el" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing</a>
+</li>
+<li>wing_data()
+: <a class="el" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">Wing_reader</a>
+</li>
+<li>Wing_moveit_decorator()
+: <a class="el" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator</a>
+</li>
+<li>wing_reader()
+: <a class="el" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">Base_calculation_mediator</a>
+</li>
+<li>Wing_reader()
+: <a class="el" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader</a>
+</li>
+<li>Wing_rviz_decorator()
+: <a class="el" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator</a>
+</li>
+<li>wings()
+: <a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">Abstract_mediator</a>
+</li>
+<li>workload_checker()
+: <a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot</a>
+</li>
+<li>world_tf()
+: <a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">Field</a>
+, <a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">Panel</a>
+</li>
+<li>write_file()
+: <a class="el" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">Mediator</a>
+</li>
+<li>write_task()
+: <a class="el" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">Abstract_map_loader</a>
+, <a class="el" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader</a>
+, <a class="el" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_~.html b/doc/html/functions_func_~.html
new file mode 100644
index 0000000000000000000000000000000000000000..c063b7355bbebe1642f3c05ea8f8e2bfeb41a0c2
--- /dev/null
+++ b/doc/html/functions_func_~.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index__7E"></a>- ~ -</h3><ul>
+<li>~Abstract_base_implementation()
+: <a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">Abstract_base_implementation</a>
+</li>
+<li>~Abstract_map_loader()
+: <a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">Abstract_map_loader</a>
+</li>
+<li>~Abstract_strategy()
+: <a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">Abstract_strategy</a>
+</li>
+<li>~Base_by_rotation()
+: <a class="el" href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">Base_by_rotation</a>
+</li>
+<li>~Collision_helper()
+: <a class="el" href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">Collision_helper</a>
+</li>
+<li>~Simple_base_implementation()
+: <a class="el" href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">Simple_base_implementation</a>
+</li>
+<li>~Wing()
+: <a class="el" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">Wing</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_g.html b/doc/html/functions_g.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc0f0954b91735158747cd5ac445fdbb02a75b1c
--- /dev/null
+++ b/doc/html/functions_g.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>generate_access_fields()
+: <a class="el" href="classCeti__robot.html#ace21ef0128109d49de07e1fe675b595d">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">Robot</a>
+</li>
+<li>generate_Ground()
+: <a class="el" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">Mediator</a>
+</li>
+<li>generate_grounds()
+: <a class="el" href="classBase__calculation__mediator.html#a6c5b26e596ed3c7fb4d226fa10183c51">Base_calculation_mediator</a>
+</li>
+<li>generateRandomCuboid()
+: <a class="el" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">Moveit_grasp_mediator</a>
+</li>
+<li>getIKSolution()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">Moveit_grasp_mediator</a>
+</li>
+<li>grasp_map_generator()
+: <a class="el" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">Moveit_robot</a>
+</li>
+<li>grasp_map_generator_
+: <a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">Moveit_robot</a>
+</li>
+<li>grasp_maps_
+: <a class="el" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">Moveit_grasp_mediator</a>
+</li>
+<li>grasp_ns_
+: <a class="el" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">Moveit_grasp_mediator</a>
+</li>
+<li>grounds_
+: <a class="el" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">Base_calculation_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_i.html b/doc/html/functions_i.html
new file mode 100644
index 0000000000000000000000000000000000000000..f315b6621cb8e26914c4690933dfb8dc7b4fff91
--- /dev/null
+++ b/doc/html/functions_i.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>implementation()
+: <a class="el" href="classAbstract__base.html#a9fe29f317aeb7337c2eaeaefdc1d1ba9">Abstract_base</a>
+</li>
+<li>implementation_
+: <a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">Abstract_base</a>
+</li>
+<li>in_collision()
+: <a class="el" href="classCeti__robot.html#af0e5f7417926e50ccb607c6612170687">Ceti_robot</a>
+</li>
+<li>input_filter()
+: <a class="el" href="classAbstract__robot__element__decorator.html#aa43d886a91e05c76c2cad7695d1662ff">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField__rviz__decorator.html#a3b79225f014c0d1081080891d332187b">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">Wing_rviz_decorator</a>
+</li>
+<li>inv_map()
+: <a class="el" href="classAbstract__base.html#aebb83168a14d660a024240bfaad70a80">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#af4f75fbdda254f2a506770969cc46d8e">Abstract_map_loader</a>
+</li>
+<li>inv_map_
+: <a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">Abstract_map_loader</a>
+</li>
+<li>inv_map_creation()
+: <a class="el" href="classAbstract__base__implementation.html#a33d38400729ffe7b9e60cca9c3ddc12f">Abstract_base_implementation</a>
+, <a class="el" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">Abstract_strategy</a>
+, <a class="el" href="classBase__by__rotation.html#ad3d528929f1ec7bd2ddeed2c68a9fbc4">Base_by_rotation</a>
+, <a class="el" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation</a>
+</li>
+<li>isStateValid()
+: <a class="el" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_j.html b/doc/html/functions_j.html
new file mode 100644
index 0000000000000000000000000000000000000000..7a6d0fe66a1ff2cd175f57857d3cdc9fea8f66e6
--- /dev/null
+++ b/doc/html/functions_j.html
@@ -0,0 +1,46 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_j"></a>- j -</h3><ul>
+<li>job_data_
+: <a class="el" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">Job_reader</a>
+</li>
+<li>Job_reader()
+: <a class="el" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader</a>
+</li>
+<li>job_reader_
+: <a class="el" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">Moveit_mediator</a>
+</li>
+<li>jobs_
+: <a class="el" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">job_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_l.html b/doc/html/functions_l.html
new file mode 100644
index 0000000000000000000000000000000000000000..e990a97496b5e049d5929963b9819b7e623b93dc
--- /dev/null
+++ b/doc/html/functions_l.html
@@ -0,0 +1,36 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>Log_decorator()
+: <a class="el" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_m.html b/doc/html/functions_m.html
new file mode 100644
index 0000000000000000000000000000000000000000..e605321fdc69708d5b560c687cf5f0ce638a1dd1
--- /dev/null
+++ b/doc/html/functions_m.html
@@ -0,0 +1,127 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>manipulate_grasp_data()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">Moveit_grasp_mediator</a>
+</li>
+<li>manipulate_mapspace()
+: <a class="el" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">Moveit_grasp_mediator</a>
+</li>
+<li>map()
+: <a class="el" href="classAbstract__base.html#a0a16c06aa3591c4daa7872dd0a1510d8">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">Abstract_map_loader</a>
+, <a class="el" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">Moveit_robot</a>
+</li>
+<li>map_
+: <a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">Abstract_map_loader</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">Moveit_robot</a>
+</li>
+<li>map_data()
+: <a class="el" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">Map_reader</a>
+</li>
+<li>map_data_
+: <a class="el" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">Map_reader</a>
+</li>
+<li>Map_loader()
+: <a class="el" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader</a>
+</li>
+<li>Map_reader()
+: <a class="el" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader</a>
+</li>
+<li>map_reader_
+: <a class="el" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">Simple_base</a>
+</li>
+<li>marker()
+: <a class="el" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">Moveit_panel</a>
+, <a class="el" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">Rviz_panel</a>
+</li>
+<li>marker_
+: <a class="el" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">Moveit_panel</a>
+, <a class="el" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">Rviz_panel</a>
+, <a class="el" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">Wing_rviz_decorator</a>
+</li>
+<li>markers()
+: <a class="el" href="classField__rviz__decorator.html#abf6af7cbe66c0fc31443bbdba78005b3">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">Wing_rviz_decorator</a>
+</li>
+<li>markers_
+: <a class="el" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">Wing_moveit_decorator</a>
+</li>
+<li>mediate()
+: <a class="el" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#af175bafdf327cc397ce1c9f42913c83a">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator</a>
+</li>
+<li>Mediator()
+: <a class="el" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator</a>
+</li>
+<li>merge_acm()
+: <a class="el" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">Moveit_mediator</a>
+</li>
+<li>merge_ps()
+: <a class="el" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">Moveit_mediator</a>
+</li>
+<li>mgi()
+: <a class="el" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">Moveit_mediator</a>
+, <a class="el" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">Moveit_robot</a>
+</li>
+<li>mgi_
+: <a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">Moveit_mediator</a>
+, <a class="el" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">Moveit_robot</a>
+</li>
+<li>mgi_hand()
+: <a class="el" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">Moveit_robot</a>
+</li>
+<li>mgi_hand_
+: <a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">Moveit_robot</a>
+</li>
+<li>Moveit_grasp_mediator()
+: <a class="el" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator</a>
+</li>
+<li>Moveit_mediator()
+: <a class="el" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a>
+</li>
+<li>Moveit_panel()
+: <a class="el" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel</a>
+</li>
+<li>Moveit_robot()
+: <a class="el" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_n.html b/doc/html/functions_n.html
new file mode 100644
index 0000000000000000000000000000000000000000..71f4782eccc896de73187df92ec9ee7bd52b3bb3
--- /dev/null
+++ b/doc/html/functions_n.html
@@ -0,0 +1,71 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a93929b117f84e353f322d353ad762d61">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#ac5776cb1039f39138f46c3a13799ee3b">Ceti_robot</a>
+, <a class="el" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">Field</a>
+, <a class="el" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel</a>
+, <a class="el" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing</a>
+</li>
+<li>name_
+: <a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element</a>
+, <a class="el" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">object_data</a>
+, <a class="el" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">Wing</a>
+, <a class="el" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">wing_BP</a>
+</li>
+<li>next()
+: <a class="el" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator</a>
+</li>
+<li>next_
+: <a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator</a>
+</li>
+<li>nh_
+: <a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">Abstract_base</a>
+, <a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">Abstract_mediator</a>
+, <a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">Abstract_robot_element_decorator</a>
+, <a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">Moveit_mediator</a>
+</li>
+<li>notify()
+: <a class="el" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a9a1d6aa0f1bdeeabe95517b0408e0cf8">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a50602f1990429a31148ec90369c8b390">Ceti_robot</a>
+, <a class="el" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_o.html b/doc/html/functions_o.html
new file mode 100644
index 0000000000000000000000000000000000000000..e74c249aa27665d2a0facd7c96208939d2b49705
--- /dev/null
+++ b/doc/html/functions_o.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>objects_
+: <a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">Abstract_mediator</a>
+</li>
+<li>observer_mask()
+: <a class="el" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#afeb11427714da34b8203de2d094dd536">Ceti_robot</a>
+</li>
+<li>observer_mask_
+: <a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">Ceti_robot</a>
+</li>
+<li>observers()
+: <a class="el" href="classCeti__robot.html#a948403a8fba6220b86d2cda6cb74a326">Ceti_robot</a>
+, <a class="el" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot</a>
+</li>
+<li>observers_
+: <a class="el" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">Robot</a>
+</li>
+<li>output_filter()
+: <a class="el" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField__rviz__decorator.html#a9ea2d91d648a270d3a3a1853d14ccfe6">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_p.html b/doc/html/functions_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..3fa38827c8fd547e5f8784751d8579eb9790780e
--- /dev/null
+++ b/doc/html/functions_p.html
@@ -0,0 +1,80 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>Panda_decorator()
+: <a class="el" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator</a>
+</li>
+<li>Panel()
+: <a class="el" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>
+</li>
+<li>parallel_exec()
+: <a class="el" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator</a>
+</li>
+<li>planFullGrasp()
+: <a class="el" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">Moveit_grasp_mediator</a>
+</li>
+<li>planning_pipeline_
+: <a class="el" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">Moveit_grasp_mediator</a>
+</li>
+<li>planning_scene_diff_publisher_
+: <a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">Moveit_mediator</a>
+</li>
+<li>planning_scene_monitor_
+: <a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">Moveit_mediator</a>
+</li>
+<li>planPreApproach()
+: <a class="el" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">Moveit_grasp_mediator</a>
+</li>
+<li>pos_
+: <a class="el" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">wing_BP</a>
+</li>
+<li>pose_
+: <a class="el" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">object_data</a>
+</li>
+<li>ps_
+: <a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">Moveit_mediator</a>
+</li>
+<li>psi_
+: <a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">Moveit_mediator</a>
+</li>
+<li>pub_
+: <a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">Base_calculation_mediator</a>
+</li>
+<li>publish()
+: <a class="el" href="classBase__calculation__mediator.html#a62cee1d422407a72223fcee53dbba5ba">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">Mediator</a>
+</li>
+<li>publish_tables()
+: <a class="el" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_r.html b/doc/html/functions_r.html
new file mode 100644
index 0000000000000000000000000000000000000000..74d86263dd21bc7863b2cc97ee752f2e437283ca
--- /dev/null
+++ b/doc/html/functions_r.html
@@ -0,0 +1,120 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>read()
+: <a class="el" href="classAbstract__param__reader.html#a441ed47eee393cc772f19d4be923e34d">Abstract_param_reader</a>
+, <a class="el" href="classCuboid__reader.html#aa9fb23e8916e3288d8172725b8cd1842">Cuboid_reader</a>
+, <a class="el" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader</a>
+, <a class="el" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader</a>
+, <a class="el" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader</a>
+, <a class="el" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader</a>
+, <a class="el" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader</a>
+, <a class="el" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader</a>
+</li>
+<li>register_observers()
+: <a class="el" href="classCeti__robot.html#ac28cfaf3ea80e2d3271c0c8ca634dc77">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot</a>
+</li>
+<li>relative_bounds_
+: <a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">Abstract_mediator</a>
+</li>
+<li>relative_tf()
+: <a class="el" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">Abstract_robot_element</a>
+</li>
+<li>relative_tf_
+: <a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element</a>
+</li>
+<li>reset()
+: <a class="el" href="classCeti__robot.html#a9db994a08373f0c75bd69226855f2b54">Ceti_robot</a>
+, <a class="el" href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot</a>
+</li>
+<li>result_vector()
+: <a class="el" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">Abstract_mediator</a>
+</li>
+<li>result_vector_
+: <a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">Abstract_mediator</a>
+</li>
+<li>rewrite_task_template()
+: <a class="el" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">Moveit_mediator</a>
+</li>
+<li>Robot()
+: <a class="el" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a>
+</li>
+<li>robot_data()
+: <a class="el" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">Job_reader</a>
+, <a class="el" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">Robot_reader</a>
+</li>
+<li>robot_data_
+: <a class="el" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">Robot_reader</a>
+</li>
+<li>robot_model_
+: <a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">Moveit_mediator</a>
+</li>
+<li>robot_reader()
+: <a class="el" href="classBase__calculation__mediator.html#a00167697941fa249b15bc322e9ecb356">Base_calculation_mediator</a>
+</li>
+<li>Robot_reader()
+: <a class="el" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader</a>
+</li>
+<li>robot_reader_
+: <a class="el" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">Base_calculation_mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">Moveit_grasp_mediator</a>
+</li>
+<li>robot_root_bounds()
+: <a class="el" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ae7c7ebc6cbf26f5e99649ffaabf7e419">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a31ba978529d6f3039ff7223f90d864ec">Ceti_robot</a>
+</li>
+<li>robot_root_bounds_
+: <a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot</a>
+</li>
+<li>robots()
+: <a class="el" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">Abstract_mediator</a>
+</li>
+<li>robots_
+: <a class="el" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">Abstract_mediator</a>
+</li>
+<li>root_tf()
+: <a class="el" href="classAbstract__robot.html#af7a230da2f4551f707557a4f5fa447ac">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a7fdba4f8a000b15b7a367066b0d79910">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a4c9612f7a87974aa64622fd4acd8123e">Ceti_robot</a>
+</li>
+<li>root_tf_
+: <a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot</a>
+</li>
+<li>rotate()
+: <a class="el" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">Abstract_robot</a>
+</li>
+<li>Rviz_panel()
+: <a class="el" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_s.html b/doc/html/functions_s.html
new file mode 100644
index 0000000000000000000000000000000000000000..a213cf87d5292a3caf5eebdf2af6356f4a70e68e
--- /dev/null
+++ b/doc/html/functions_s.html
@@ -0,0 +1,183 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>sampling_planner_
+: <a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">Moveit_mediator</a>
+</li>
+<li>scene_setup()
+: <a class="el" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">Moveit_grasp_mediator</a>
+</li>
+<li>set_cuboid_bin_data()
+: <a class="el" href="classCuboid__reader.html#a79e976d81d68adfc6b15d5b6879a726e">Cuboid_reader</a>
+</li>
+<li>set_cuboid_obstacle_data()
+: <a class="el" href="classCuboid__reader.html#ace0ace01df2eeb0607e8ad9d2764200d">Cuboid_reader</a>
+</li>
+<li>set_dirname()
+: <a class="el" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">Abstract_mediator</a>
+</li>
+<li>set_drop_off_data()
+: <a class="el" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">Ts_reader</a>
+</li>
+<li>set_grasp_map_generator()
+: <a class="el" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">Moveit_robot</a>
+</li>
+<li>set_grasp_orientations()
+: <a class="el" href="classAbstract__base__implementation.html#a4c2ee065ff500f9d588ab967d55d3677">Abstract_base_implementation</a>
+, <a class="el" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation</a>
+</li>
+<li>set_implementation()
+: <a class="el" href="classAbstract__base.html#ae41eb0b9891cdcfca4ae7df8234a9113">Abstract_base</a>
+</li>
+<li>set_inv_map()
+: <a class="el" href="classAbstract__base.html#a12b49689227a6dd6d0aa55fe273dfae2">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a297e8f8fa66f70678d19d321033eea4d">Abstract_map_loader</a>
+</li>
+<li>set_job_data()
+: <a class="el" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">Job_reader</a>
+</li>
+<li>set_map()
+: <a class="el" href="classAbstract__base.html#ac83e7d3257c5cadc3285a90801f7a479">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">Abstract_map_loader</a>
+</li>
+<li>set_map_data()
+: <a class="el" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">Map_reader</a>
+</li>
+<li>set_markers()
+: <a class="el" href="classField__rviz__decorator.html#a16d7d4e68c53db336c4d2a9f032adff7">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">Wing_rviz_decorator</a>
+</li>
+<li>set_name()
+: <a class="el" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">Field</a>
+, <a class="el" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">Panel</a>
+, <a class="el" href="classWing.html#a59974ceb515b29cab964aba4314a8885">Wing</a>
+</li>
+<li>set_observer_mask()
+: <a class="el" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">Ceti_robot</a>
+</li>
+<li>set_panel()
+: <a class="el" href="classBase__calculation__mediator.html#a3fc38aa682c47686159c0c67b7685fd7">Base_calculation_mediator</a>
+</li>
+<li>set_relative_tf()
+: <a class="el" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">Abstract_robot_element</a>
+</li>
+<li>set_result_vector()
+: <a class="el" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">Abstract_mediator</a>
+</li>
+<li>set_robot_data()
+: <a class="el" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">Robot_reader</a>
+</li>
+<li>set_set()
+: <a class="el" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">Field</a>
+, <a class="el" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">Panel</a>
+, <a class="el" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">Wing</a>
+</li>
+<li>set_strategy()
+: <a class="el" href="classAbstract__map__loader.html#a3508478d51dcdf86ed8418006a4dd0d9">Abstract_map_loader</a>
+</li>
+<li>set_target_cloud()
+: <a class="el" href="classAbstract__base.html#a65784b6507975934712e2509e237680a">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a2945aff76228233abb3a89477c013d8a">Abstract_map_loader</a>
+</li>
+<li>set_target_rot()
+: <a class="el" href="classAbstract__map__loader.html#a2adcb4394435282441360fb2310c231b">Abstract_map_loader</a>
+</li>
+<li>set_task_grasps()
+: <a class="el" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">Abstract_map_loader</a>
+</li>
+<li>set_task_space()
+: <a class="el" href="classAbstract__base.html#ae2031dc21ac6416978f9fe854449287e">Abstract_base</a>
+</li>
+<li>set_tasks()
+: <a class="el" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">Moveit_mediator</a>
+</li>
+<li>set_tf()
+: <a class="el" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">Abstract_robot</a>
+</li>
+<li>set_wing_data()
+: <a class="el" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">Wing_reader</a>
+</li>
+<li>set_wings()
+: <a class="el" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator</a>
+</li>
+<li>set_world_tf()
+: <a class="el" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">Abstract_robot_element</a>
+</li>
+<li>setup_rviz()
+: <a class="el" href="classBase__calculation__mediator.html#a1e5a579ea6a516ec8537b4b3d506e4ae">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">Mediator</a>
+</li>
+<li>setup_task()
+: <a class="el" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">Moveit_mediator</a>
+</li>
+<li>Simple_base()
+: <a class="el" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base</a>
+</li>
+<li>Simple_base_implementation()
+: <a class="el" href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation</a>
+</li>
+<li>size()
+: <a class="el" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a70a76cf36cdbe1179340b533b238151b">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">Abstract_robot_element_decorator</a>
+, <a class="el" href="classCeti__robot.html#aafdcb4ce7d655b291170818c43162aa7">Ceti_robot</a>
+, <a class="el" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">Field</a>
+, <a class="el" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel</a>
+, <a class="el" href="classWing.html#a166b6d0367d7218947e3b2321360c521">Wing</a>
+</li>
+<li>size_
+: <a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element</a>
+, <a class="el" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">object_data</a>
+, <a class="el" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">Wing</a>
+, <a class="el" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">wing_BP</a>
+</li>
+<li>spezifie_robot_groups()
+: <a class="el" href="classAbstract__robot__decorator.html#ac4f20979cd3cdb659a380511ef509b90">Abstract_robot_decorator</a>
+, <a class="el" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator</a>
+</li>
+<li>spezifie_root_bounds()
+: <a class="el" href="classAbstract__robot__decorator.html#a2a2ac64bad39febde6685135822c2597">Abstract_robot_decorator</a>
+, <a class="el" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator</a>
+</li>
+<li>strategy()
+: <a class="el" href="classAbstract__map__loader.html#afd6b5c362ad38cfe32600ff9f1398bc7">Abstract_map_loader</a>
+</li>
+<li>strategy_
+: <a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">Abstract_map_loader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_t.html b/doc/html/functions_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d379c91123263e4b534efd257bb285f64875b68
--- /dev/null
+++ b/doc/html/functions_t.html
@@ -0,0 +1,92 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>target_cloud()
+: <a class="el" href="classAbstract__base.html#ab7c57b1ac4fb42ab400c0fc08e9aff61">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#abb73acebcfbfb3a5acb790eb2d96fbd6">Abstract_map_loader</a>
+</li>
+<li>target_cloud_
+: <a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">Abstract_map_loader</a>
+</li>
+<li>target_rot()
+: <a class="el" href="classAbstract__map__loader.html#abdd0484ea0507910d37b0eae257b6476">Abstract_map_loader</a>
+</li>
+<li>target_rot_
+: <a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">Abstract_map_loader</a>
+</li>
+<li>task_grasps()
+: <a class="el" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader</a>
+</li>
+<li>task_grasps_
+: <a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">Abstract_map_loader</a>
+</li>
+<li>task_map()
+: <a class="el" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">Moveit_mediator</a>
+</li>
+<li>task_map_
+: <a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">Moveit_mediator</a>
+</li>
+<li>task_planner()
+: <a class="el" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">Moveit_mediator</a>
+</li>
+<li>task_space()
+: <a class="el" href="classAbstract__base.html#ad4b63750f9b890cf99f9187624cc97be">Abstract_base</a>
+</li>
+<li>task_space_
+: <a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">Abstract_base</a>
+</li>
+<li>Task_space_reader()
+: <a class="el" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader</a>
+</li>
+<li>task_space_reader_
+: <a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">Abstract_mediator</a>
+, <a class="el" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">Simple_base</a>
+</li>
+<li>tasks_
+: <a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">Moveit_mediator</a>
+</li>
+<li>tf()
+: <a class="el" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a5a2e4b619b74d083b4497af183948950">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a60528a5a7c83e0b15d9fee091b00e5b3">Ceti_robot</a>
+</li>
+<li>tf_
+: <a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot</a>
+</li>
+<li>translate()
+: <a class="el" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">Abstract_robot</a>
+</li>
+<li>Ts_reader()
+: <a class="el" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_u.html b/doc/html/functions_u.html
new file mode 100644
index 0000000000000000000000000000000000000000..2acf91f0337c40db680edf1e73e98d73f4dc2c1b
--- /dev/null
+++ b/doc/html/functions_u.html
@@ -0,0 +1,46 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>update()
+: <a class="el" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field</a>
+, <a class="el" href="classField__rviz__decorator.html#abf15c56ecefe976950818f7418ad47d4">Field_rviz_decorator</a>
+, <a class="el" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator</a>
+, <a class="el" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel</a>
+, <a class="el" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel</a>
+, <a class="el" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel</a>
+, <a class="el" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">Wing</a>
+, <a class="el" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator</a>
+, <a class="el" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_v.html b/doc/html/functions_v.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d803689f538b1b0b2500a0492a6f488801d25fe
--- /dev/null
+++ b/doc/html/functions_v.html
@@ -0,0 +1,49 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>vector_to_cloud()
+: <a class="el" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator</a>
+, <a class="el" href="classMediator.html#accf269f067ad74db3e291289a96a71cc">Mediator</a>
+</li>
+<li>visual_tools_
+: <a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">Moveit_mediator</a>
+</li>
+<li>visualizePick()
+: <a class="el" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">Moveit_grasp_mediator</a>
+</li>
+<li>voxel_environment_
+: <a class="el" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">Moveit_grasp_mediator</a>
+</li>
+<li>voxel_manager_
+: <a class="el" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">Moveit_grasp_mediator</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html
new file mode 100644
index 0000000000000000000000000000000000000000..7fd47e364295358b738ddd00d198d9281affeb17
--- /dev/null
+++ b/doc/html/functions_vars.html
@@ -0,0 +1,332 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>access_fields_
+: <a class="el" href="classCeti__robot.html#ae788dd0c96ea0112e46c0c817eb40466">Ceti_robot</a>
+, <a class="el" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">Robot</a>
+</li>
+<li>acm_
+: <a class="el" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">Moveit_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>bounds_
+: <a class="el" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element</a>
+, <a class="el" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">Wing</a>
+</li>
+</ul>
+
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cartesian_planner_
+: <a class="el" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">Moveit_mediator</a>
+</li>
+<li>coll_markers_
+: <a class="el" href="classCeti__robot.html#a96c4c46c18217a5f55bbb9e8d57d0b9b">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">Robot</a>
+</li>
+<li>cuboid_box_
+: <a class="el" href="classCuboid__reader.html#ae02b31c6baf83e5d957170a7d454224b">Cuboid_reader</a>
+</li>
+<li>cuboid_obstacle_
+: <a class="el" href="classCuboid__reader.html#af8a5a286ea79d157c294d0f1efc9ce8a">Cuboid_reader</a>
+</li>
+<li>cuboid_reader_
+: <a class="el" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">Moveit_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>dirname_
+: <a class="el" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator</a>
+</li>
+<li>drop_off_data_
+: <a class="el" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">Ts_reader</a>
+</li>
+</ul>
+
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>grasp_map_generator_
+: <a class="el" href="classAbstract__robot__decorator.html#a625e198b41f5965ac3fca6673d4039a7">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">Moveit_robot</a>
+</li>
+<li>grasp_maps_
+: <a class="el" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">Moveit_grasp_mediator</a>
+</li>
+<li>grasp_ns_
+: <a class="el" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">Moveit_grasp_mediator</a>
+</li>
+<li>grounds_
+: <a class="el" href="classBase__calculation__mediator.html#a008b22e99593f2fcbff3c6e26ae5ddbe">Base_calculation_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>implementation_
+: <a class="el" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">Abstract_base</a>
+</li>
+<li>inv_map_
+: <a class="el" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#ad43b3e44a4908e0352c3a7c7b26c8347">Abstract_map_loader</a>
+</li>
+</ul>
+
+
+<h3><a id="index_j"></a>- j -</h3><ul>
+<li>job_data_
+: <a class="el" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">Job_reader</a>
+</li>
+<li>job_reader_
+: <a class="el" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">Moveit_grasp_mediator</a>
+, <a class="el" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">Moveit_mediator</a>
+</li>
+<li>jobs_
+: <a class="el" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">job_data</a>
+</li>
+</ul>
+
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>map_
+: <a class="el" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#a460481a298b27e411bafcdc584f1f35a">Abstract_map_loader</a>
+, <a class="el" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">Moveit_robot</a>
+</li>
+<li>map_data_
+: <a class="el" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">Map_reader</a>
+</li>
+<li>map_reader_
+: <a class="el" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">Simple_base</a>
+</li>
+<li>marker_
+: <a class="el" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">Moveit_panel</a>
+, <a class="el" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">Rviz_panel</a>
+, <a class="el" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">Wing_rviz_decorator</a>
+</li>
+<li>markers_
+: <a class="el" href="classField__rviz__decorator.html#ad524be1ab9385b0f0e1a91c794ce2a94">Field_rviz_decorator</a>
+, <a class="el" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">Wing_moveit_decorator</a>
+</li>
+<li>mgi_
+: <a class="el" href="classAbstract__robot__decorator.html#a586e264c1add89b1becf4e5d18964160">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">Moveit_mediator</a>
+, <a class="el" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">Moveit_robot</a>
+</li>
+<li>mgi_hand_
+: <a class="el" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">Abstract_robot_decorator</a>
+, <a class="el" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">Moveit_robot</a>
+</li>
+</ul>
+
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>name_
+: <a class="el" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element</a>
+, <a class="el" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">object_data</a>
+, <a class="el" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">Wing</a>
+, <a class="el" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">wing_BP</a>
+</li>
+<li>next_
+: <a class="el" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">Abstract_robot_decorator</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator</a>
+</li>
+<li>nh_
+: <a class="el" href="classAbstract__base.html#a54d21fd6fe1217c1b065c5b500e3e8d0">Abstract_base</a>
+, <a class="el" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">Abstract_mediator</a>
+, <a class="el" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">Abstract_robot_element_decorator</a>
+, <a class="el" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">Moveit_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>objects_
+: <a class="el" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">Abstract_mediator</a>
+</li>
+<li>observer_mask_
+: <a class="el" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">Abstract_robot</a>
+, <a class="el" href="classCeti__robot.html#adfdaf371d8c0ba26fe6ea193539cd2f9">Ceti_robot</a>
+</li>
+<li>observers_
+: <a class="el" href="classCeti__robot.html#af8c6391807befcfd2d431ad180a3beaf">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">Robot</a>
+</li>
+</ul>
+
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>planning_pipeline_
+: <a class="el" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">Moveit_grasp_mediator</a>
+</li>
+<li>planning_scene_diff_publisher_
+: <a class="el" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">Moveit_mediator</a>
+</li>
+<li>planning_scene_monitor_
+: <a class="el" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">Moveit_mediator</a>
+</li>
+<li>pos_
+: <a class="el" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">wing_BP</a>
+</li>
+<li>pose_
+: <a class="el" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">object_data</a>
+</li>
+<li>ps_
+: <a class="el" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">Moveit_mediator</a>
+</li>
+<li>psi_
+: <a class="el" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">Moveit_mediator</a>
+</li>
+<li>pub_
+: <a class="el" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a5419d9798ac36cd945706721aa542278">Base_calculation_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>relative_bounds_
+: <a class="el" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">Abstract_mediator</a>
+</li>
+<li>relative_tf_
+: <a class="el" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element</a>
+</li>
+<li>result_vector_
+: <a class="el" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">Abstract_mediator</a>
+</li>
+<li>robot_data_
+: <a class="el" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">Robot_reader</a>
+</li>
+<li>robot_model_
+: <a class="el" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">Moveit_mediator</a>
+</li>
+<li>robot_reader_
+: <a class="el" href="classBase__calculation__mediator.html#a3a04eb51e61a15179088786b9555e000">Base_calculation_mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">Moveit_grasp_mediator</a>
+</li>
+<li>robot_root_bounds_
+: <a class="el" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot</a>
+</li>
+<li>robots_
+: <a class="el" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator</a>
+</li>
+<li>root_tf_
+: <a class="el" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot</a>
+</li>
+</ul>
+
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>sampling_planner_
+: <a class="el" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">Moveit_mediator</a>
+</li>
+<li>size_
+: <a class="el" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element</a>
+, <a class="el" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">object_data</a>
+, <a class="el" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">Wing</a>
+, <a class="el" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">wing_BP</a>
+</li>
+<li>strategy_
+: <a class="el" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">Abstract_map_loader</a>
+</li>
+</ul>
+
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>target_cloud_
+: <a class="el" href="classAbstract__base.html#a20a272f916415c6d30d6c3af3eb75f33">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">Abstract_map_loader</a>
+</li>
+<li>target_rot_
+: <a class="el" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">Abstract_map_loader</a>
+</li>
+<li>task_grasps_
+: <a class="el" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">Abstract_map_loader</a>
+</li>
+<li>task_map_
+: <a class="el" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">Moveit_mediator</a>
+</li>
+<li>task_space_
+: <a class="el" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">Abstract_base</a>
+</li>
+<li>task_space_reader_
+: <a class="el" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">Abstract_mediator</a>
+, <a class="el" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">Simple_base</a>
+</li>
+<li>tasks_
+: <a class="el" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">Moveit_mediator</a>
+</li>
+<li>tf_
+: <a class="el" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot</a>
+</li>
+</ul>
+
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>visual_tools_
+: <a class="el" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">Moveit_mediator</a>
+</li>
+<li>voxel_environment_
+: <a class="el" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">Moveit_grasp_mediator</a>
+</li>
+<li>voxel_manager_
+: <a class="el" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">Moveit_grasp_mediator</a>
+</li>
+</ul>
+
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>wing_data_
+: <a class="el" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">Wing_reader</a>
+</li>
+<li>wing_reader_
+: <a class="el" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">Base_calculation_mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">Moveit_grasp_mediator</a>
+</li>
+<li>wings_
+: <a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">Base_calculation_mediator</a>
+</li>
+<li>world_tf_
+: <a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_w.html b/doc/html/functions_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b5ddd28f6913746e18408de33c63b86d42c7002
--- /dev/null
+++ b/doc/html/functions_w.html
@@ -0,0 +1,96 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>waitForNextStep()
+: <a class="el" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator</a>
+</li>
+<li>wing()
+: <a class="el" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator</a>
+</li>
+<li>Wing()
+: <a class="el" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing</a>
+</li>
+<li>wing_data()
+: <a class="el" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">Wing_reader</a>
+</li>
+<li>wing_data_
+: <a class="el" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">Wing_reader</a>
+</li>
+<li>Wing_moveit_decorator()
+: <a class="el" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator</a>
+</li>
+<li>wing_reader()
+: <a class="el" href="classBase__calculation__mediator.html#a7d366c17687d6e3e4d3bc27c888ee5f5">Base_calculation_mediator</a>
+</li>
+<li>Wing_reader()
+: <a class="el" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader</a>
+</li>
+<li>wing_reader_
+: <a class="el" href="classBase__calculation__mediator.html#ae1c0060fbd229bb5c7c8229e82200fc0">Base_calculation_mediator</a>
+, <a class="el" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">Moveit_grasp_mediator</a>
+</li>
+<li>Wing_rviz_decorator()
+: <a class="el" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator</a>
+</li>
+<li>wings()
+: <a class="el" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">Abstract_mediator</a>
+</li>
+<li>wings_
+: <a class="el" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator</a>
+, <a class="el" href="classBase__calculation__mediator.html#a8274031d01b4648815a25e9e545178c5">Base_calculation_mediator</a>
+</li>
+<li>workload_checker()
+: <a class="el" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot</a>
+, <a class="el" href="classAbstract__robot__decorator.html#ad725d88bfcce39d8e90c45b38b85e144">Abstract_robot_decorator</a>
+, <a class="el" href="classCeti__robot.html#a8bfe48e6325263ae5607a5621dedebe9">Ceti_robot</a>
+, <a class="el" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot</a>
+</li>
+<li>world_tf()
+: <a class="el" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element</a>
+, <a class="el" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">Abstract_robot_element_decorator</a>
+, <a class="el" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">Field</a>
+, <a class="el" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">Panel</a>
+</li>
+<li>world_tf_
+: <a class="el" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element</a>
+</li>
+<li>write_file()
+: <a class="el" href="classBase__calculation__mediator.html#a1e710053c31cd1f4da64b45a11c7b660">Base_calculation_mediator</a>
+, <a class="el" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">Mediator</a>
+</li>
+<li>write_task()
+: <a class="el" href="classAbstract__base.html#a3fa949c8f9fd12d96add87d38810ceef">Abstract_base</a>
+, <a class="el" href="classAbstract__map__loader.html#acb51b1dd09b8689778de1a0b593d3a1f">Abstract_map_loader</a>
+, <a class="el" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader</a>
+, <a class="el" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_~.html b/doc/html/functions_~.html
new file mode 100644
index 0000000000000000000000000000000000000000..a03c9d34c2b7c857a9e99352292cd3c548412df7
--- /dev/null
+++ b/doc/html/functions_~.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index__7E"></a>- ~ -</h3><ul>
+<li>~Abstract_base_implementation()
+: <a class="el" href="classAbstract__base__implementation.html#a7e51334938ee2afa88fe37b6e9b75690">Abstract_base_implementation</a>
+</li>
+<li>~Abstract_map_loader()
+: <a class="el" href="classAbstract__map__loader.html#a3b3675673d54d23b1678bd47df4b2273">Abstract_map_loader</a>
+</li>
+<li>~Abstract_strategy()
+: <a class="el" href="classAbstract__strategy.html#a42ded383c401bd6cc047f5c6064f5e8d">Abstract_strategy</a>
+</li>
+<li>~Base_by_rotation()
+: <a class="el" href="classBase__by__rotation.html#a63a6ed1a606880c99c0bc96f666d83ba">Base_by_rotation</a>
+</li>
+<li>~Collision_helper()
+: <a class="el" href="classCollision__helper.html#a3578a1bf2e59c1f5e55fc396ce966e9b">Collision_helper</a>
+</li>
+<li>~Simple_base_implementation()
+: <a class="el" href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">Simple_base_implementation</a>
+</li>
+<li>~Wing()
+: <a class="el" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">Wing</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals.html b/doc/html/globals.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc6e6ac7dc4f06d962e7520885c4e3d5bec865d4
--- /dev/null
+++ b/doc/html/globals.html
@@ -0,0 +1,134 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all file members with links to the files they belong to:</div>
+
+<h3><a id="index__5F"></a>- _ -</h3><ul>
+<li>___
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">robot/abstract_robot.h</a>
+</li>
+<li>__L
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">robot/abstract_robot.h</a>
+</li>
+<li>_M_
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">robot/abstract_robot.h</a>
+</li>
+<li>_ML
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">robot/abstract_robot.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>box_size
+: <a class="el" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">impl/abstract_mediator.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>etsg_
+: <a class="el" href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">moveit_mediator.cpp</a>
+</li>
+</ul>
+
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>L_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#aaa42a37a844c5621fda56ec3030e0d10">impl/abstract_mediator.h</a>
+</li>
+<li>left_size
+: <a class="el" href="impl_2abstract__robot_8h.html#a073c2dc3016a11f05027909f7e88dd40">impl/abstract_robot.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>M_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#ae48206ef860db463980ca8ff4bedaddd">impl/abstract_mediator.h</a>
+</li>
+<li>main()
+: <a class="el" href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">base_routine.cpp</a>
+, <a class="el" href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">cell_routine.cpp</a>
+, <a class="el" href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">grasp_cell_routine.cpp</a>
+, <a class="el" href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">mtc2taskspace.cpp</a>
+, <a class="el" href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">robot_base_calculation_approach.cpp</a>
+</li>
+<li>mid_size
+: <a class="el" href="impl_2abstract__robot_8h.html#a84210660daefdf244d270c0e29020b6f">impl/abstract_robot.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>R__
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">robot/abstract_robot.h</a>
+</li>
+<li>R_L
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">robot/abstract_robot.h</a>
+</li>
+<li>R_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#a39a715cfc5408be39900e0fda32e4d02">impl/abstract_mediator.h</a>
+</li>
+<li>right_size
+: <a class="el" href="impl_2abstract__robot_8h.html#ab3a3a04dddd8d15a526b9227b42c0e4a">impl/abstract_robot.h</a>
+</li>
+<li>RM_
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">robot/abstract_robot.h</a>
+</li>
+<li>RML
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">robot/abstract_robot.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>task__
+: <a class="el" href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">moveit_mediator.cpp</a>
+</li>
+<li>task_writing
+: <a class="el" href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">moveit_mediator.cpp</a>
+</li>
+</ul>
+
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>wing_config
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">robot/abstract_robot.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html
new file mode 100644
index 0000000000000000000000000000000000000000..510deefb552ba4dca9c90a1d0e68ac4d48fcb03d
--- /dev/null
+++ b/doc/html/globals_defs.html
@@ -0,0 +1,52 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>box_size
+: <a class="el" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">impl/abstract_mediator.h</a>
+</li>
+<li>L_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#aaa42a37a844c5621fda56ec3030e0d10">impl/abstract_mediator.h</a>
+</li>
+<li>left_size
+: <a class="el" href="impl_2abstract__robot_8h.html#a073c2dc3016a11f05027909f7e88dd40">impl/abstract_robot.h</a>
+</li>
+<li>M_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#ae48206ef860db463980ca8ff4bedaddd">impl/abstract_mediator.h</a>
+</li>
+<li>mid_size
+: <a class="el" href="impl_2abstract__robot_8h.html#a84210660daefdf244d270c0e29020b6f">impl/abstract_robot.h</a>
+</li>
+<li>R_POS
+: <a class="el" href="impl_2abstract__mediator_8h.html#a39a715cfc5408be39900e0fda32e4d02">impl/abstract_mediator.h</a>
+</li>
+<li>right_size
+: <a class="el" href="impl_2abstract__robot_8h.html#ab3a3a04dddd8d15a526b9227b42c0e4a">impl/abstract_robot.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_enum.html b/doc/html/globals_enum.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d36e5c30c72f692990d21134ddd93f755945b9a
--- /dev/null
+++ b/doc/html/globals_enum.html
@@ -0,0 +1,35 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>wing_config
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">robot/abstract_robot.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_eval.html b/doc/html/globals_eval.html
new file mode 100644
index 0000000000000000000000000000000000000000..d7434d943dfd7a015a4b882c37a0df5beffecd29
--- /dev/null
+++ b/doc/html/globals_eval.html
@@ -0,0 +1,63 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>___
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">robot/abstract_robot.h</a>
+</li>
+<li>__L
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">robot/abstract_robot.h</a>
+</li>
+<li>_M_
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">robot/abstract_robot.h</a>
+</li>
+<li>_ML
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">robot/abstract_robot.h</a>
+</li>
+<li>R__
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">robot/abstract_robot.h</a>
+</li>
+<li>R_L
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">robot/abstract_robot.h</a>
+</li>
+<li>RM_
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">robot/abstract_robot.h</a>
+</li>
+<li>RML
+: <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">impl/abstract_robot.h</a>
+, <a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">robot/abstract_robot.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..c6f26bcac2318eef2a82b8150a2fa8b9a105aea2
--- /dev/null
+++ b/doc/html/globals_func.html
@@ -0,0 +1,38 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>main()
+: <a class="el" href="base__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">base_routine.cpp</a>
+, <a class="el" href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">robot_base_calculation_approach.cpp</a>
+, <a class="el" href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">mtc2taskspace.cpp</a>
+, <a class="el" href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">grasp_cell_routine.cpp</a>
+, <a class="el" href="cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">cell_routine.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html
new file mode 100644
index 0000000000000000000000000000000000000000..e74467da92435562cc103bfb447bb52bbba159e6
--- /dev/null
+++ b/doc/html/globals_vars.html
@@ -0,0 +1,40 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: File Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>etsg_
+: <a class="el" href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">moveit_mediator.cpp</a>
+</li>
+<li>task__
+: <a class="el" href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">moveit_mediator.cpp</a>
+</li>
+<li>task_writing
+: <a class="el" href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">moveit_mediator.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/graph_legend.html b/doc/html/graph_legend.html
new file mode 100644
index 0000000000000000000000000000000000000000..06f7c457d2fcdccc406b4dd7692e81fcef29d61b
--- /dev/null
+++ b/doc/html/graph_legend.html
@@ -0,0 +1,93 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Graph Legend</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Graph Legend</div>  </div>
+</div><!--header-->
+<div class="contents">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p><div class="fragment"><div class="line"><span class="comment">/*! Invisible class because of truncation */</span></div>
+<div class="line"><span class="keyword">class </span>Invisible { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Truncated class, inheritance relation is hidden */</span></div>
+<div class="line"><span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };</div>
+<div class="line"> </div>
+<div class="line"><span class="comment">/* Class not documented with doxygen comments */</span></div>
+<div class="line"><span class="keyword">class </span>Undocumented { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Class that is inherited using public inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! A template class */</span></div>
+<div class="line"><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Class that is inherited using protected inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>ProtectedBase { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Class that is inherited using private inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PrivateBase { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Class that is used by the Inherited class */</span></div>
+<div class="line"><span class="keyword">class </span>Used { };</div>
+<div class="line"><span class="comment"></span> </div>
+<div class="line"><span class="comment">/*! Super class that inherits a number of other classes */</span></div>
+<div class="line"><span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,</div>
+<div class="line">                  <span class="keyword">protected</span> ProtectedBase,</div>
+<div class="line">                  <span class="keyword">private</span> PrivateBase,</div>
+<div class="line">                  <span class="keyword">public</span> Undocumented,</div>
+<div class="line">                  <span class="keyword">public</span> Templ&lt;int&gt;</div>
+<div class="line">{</div>
+<div class="line">  <span class="keyword">private</span>:</div>
+<div class="line">    Used *m_usedClass;</div>
+<div class="line">};</div>
+</div><!-- fragment --><p> This will result in the following graph:</p>
+<center><img src="graph_legend.png" alt="" class="inline"/></center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
+<li>
+A filled gray box represents the struct or class for which the graph is generated. </li>
+<li>
+A box with a black border denotes a documented struct or class. </li>
+<li>
+A box with a gray border denotes an undocumented struct or class. </li>
+<li>
+A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
+</ul>
+<p>The arrows have the following meaning: </p>
+<ul>
+<li>
+A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
+<li>
+A dark green arrow is used for protected inheritance. </li>
+<li>
+A dark red arrow is used for private inheritance. </li>
+<li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible. </li>
+<li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance. </li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/graph_legend.md5 b/doc/html/graph_legend.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8fcdccd1b9be95b9b7d8687f03e11ea1f8b4c541
--- /dev/null
+++ b/doc/html/graph_legend.md5
@@ -0,0 +1 @@
+f51bf6e9a10430aafef59831b08dcbfe
\ No newline at end of file
diff --git a/doc/html/graph_legend.png b/doc/html/graph_legend.png
new file mode 100644
index 0000000000000000000000000000000000000000..83dfada4875ec19170dc2766167cef96526ee173
Binary files /dev/null and b/doc/html/graph_legend.png differ
diff --git a/doc/html/grasp__cell__routine_8cpp.html b/doc/html/grasp__cell__routine_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..c1dda9b9bf71052baa1b0bb8eb3bbabfc00084ec
--- /dev/null
+++ b/doc/html/grasp__cell__routine_8cpp.html
@@ -0,0 +1,156 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: grasp_cell_routine.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">grasp_cell_routine.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="map__loader_8h_source.html">impl/map_loader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__mediator_8h_source.html">impl/moveit_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__grasp__mediator_8h_source.html">impl/moveit_grasp_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__moveit__decorator_8h_source.html">impl/wing_moveit_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__robot_8h_source.html">impl/moveit_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="collision__helper_8h_source.html">impl/collision_helper.h</a>&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="cuboid__reader_8h_source.html">reader/cuboid_reader.h</a>&quot;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</code><br />
+<code>#include &lt;moveit_grasps/grasp_planner.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for grasp_cell_routine.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="grasp__cell__routine_8cpp__incl.png" border="0" usemap="#grasp__cell__routine_8cpp" alt=""/></div>
+<map name="grasp__cell__routine_8cpp" id="grasp__cell__routine_8cpp">
+<area shape="rect" title=" " alt="" coords="3589,5,3757,32"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="2775,437,2936,464"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="3187,623,3391,650"/>
+<area shape="rect" title=" " alt="" coords="3859,705,4009,732"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1301,527,1450,568"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="2926,534,3070,561"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="347,430,511,471"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="3449,259,3635,285"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="535,437,634,464"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="3803,534,3963,561"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="3702,616,3873,657"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1607,169,1786,196"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="474,259,629,285"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="509,348,729,375"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="5,259,175,285"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="4175,534,4347,561"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="3709,87,3932,114"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="3987,534,4150,561"/>
+<area shape="rect" title=" " alt="" coords="4352,80,4543,121"/>
+<area shape="rect" title=" " alt="" coords="4567,80,4757,121"/>
+<area shape="rect" title=" " alt="" coords="4781,80,4972,121"/>
+<area shape="rect" title=" " alt="" coords="4996,80,5155,121"/>
+<area shape="rect" title=" " alt="" coords="2216,705,2295,732"/>
+<area shape="rect" title=" " alt="" coords="2677,705,2876,732"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="3094,534,3273,561"/>
+<area shape="rect" title=" " alt="" coords="2902,705,3054,732"/>
+<area shape="rect" title=" " alt="" coords="3079,705,3211,732"/>
+<area shape="rect" title=" " alt="" coords="3235,705,3377,732"/>
+<area shape="rect" title=" " alt="" coords="4056,705,4169,732"/>
+<area shape="rect" title=" " alt="" coords="3485,705,3617,732"/>
+<area shape="rect" title=" " alt="" coords="3641,705,3715,732"/>
+<area shape="rect" title=" " alt="" coords="1413,616,1559,657"/>
+<area shape="rect" title=" " alt="" coords="3402,705,3461,732"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1058,348,1159,375"/>
+<area shape="rect" title=" " alt="" coords="658,423,850,479"/>
+<area shape="rect" title=" " alt="" coords="874,430,1093,471"/>
+<area shape="rect" title=" " alt="" coords="1117,430,1324,471"/>
+<area shape="rect" title=" " alt="" coords="1648,423,1804,479"/>
+<area shape="rect" title=" " alt="" coords="1399,430,1573,471"/>
+<area shape="rect" title=" " alt="" coords="1829,430,2045,471"/>
+<area shape="rect" title=" " alt="" coords="1312,251,1481,293"/>
+<area shape="rect" title=" " alt="" coords="1505,251,1685,293"/>
+<area shape="rect" title=" " alt="" coords="1709,251,1889,293"/>
+<area shape="rect" title=" " alt="" coords="1913,251,2093,293"/>
+<area shape="rect" title=" " alt="" coords="2117,251,2297,293"/>
+<area shape="rect" title=" " alt="" coords="2321,244,2501,300"/>
+<area shape="rect" title=" " alt="" coords="2525,244,2705,300"/>
+<area shape="rect" title=" " alt="" coords="2730,251,2911,293"/>
+<area shape="rect" title=" " alt="" coords="2936,244,3119,300"/>
+<area shape="rect" title=" " alt="" coords="3143,251,3323,293"/>
+</map>
+</div>
+</div>
+<p><a href="grasp__cell__routine_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="grasp__cell__routine_8cpp_source.html#l00026">26</a> of file <a class="el" href="grasp__cell__routine_8cpp_source.html">grasp_cell_routine.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/grasp__cell__routine_8cpp__incl.map b/doc/html/grasp__cell__routine_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..440b6722b9cedbe622d59583a4f435fb4aa71de5
--- /dev/null
+++ b/doc/html/grasp__cell__routine_8cpp__incl.map
@@ -0,0 +1,52 @@
+<map id="grasp_cell_routine.cpp" name="grasp_cell_routine.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="3589,5,3757,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="2775,437,2936,464"/>
+<area shape="rect" id="node6" href="$abstract__map__loader_8h.html" title=" " alt="" coords="3187,623,3391,650"/>
+<area shape="rect" id="node7" title=" " alt="" coords="3859,705,4009,732"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1301,527,1450,568"/>
+<area shape="rect" id="node16" href="$map__loader_8h.html" title=" " alt="" coords="2926,534,3070,561"/>
+<area shape="rect" id="node18" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="347,430,511,471"/>
+<area shape="rect" id="node19" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="3449,259,3635,285"/>
+<area shape="rect" id="node21" href="$wing_8h.html" title=" " alt="" coords="535,437,634,464"/>
+<area shape="rect" id="node28" href="$wing__reader_8h.html" title=" " alt="" coords="3803,534,3963,561"/>
+<area shape="rect" id="node29" href="$abstract__param__reader_8h.html" title=" " alt="" coords="3702,616,3873,657"/>
+<area shape="rect" id="node30" href="$moveit__mediator_8h.html" title=" " alt="" coords="1607,169,1786,196"/>
+<area shape="rect" id="node32" href="$moveit__robot_8h.html" title=" " alt="" coords="474,259,629,285"/>
+<area shape="rect" id="node33" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="509,348,729,375"/>
+<area shape="rect" id="node34" href="$collision__helper_8h.html" title=" " alt="" coords="5,259,175,285"/>
+<area shape="rect" id="node44" href="$cuboid__reader_8h.html" title=" " alt="" coords="4175,534,4347,561"/>
+<area shape="rect" id="node45" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="3709,87,3932,114"/>
+<area shape="rect" id="node46" href="$robot__reader_8h.html" title=" " alt="" coords="3987,534,4150,561"/>
+<area shape="rect" id="node47" title=" " alt="" coords="4352,80,4543,121"/>
+<area shape="rect" id="node48" title=" " alt="" coords="4567,80,4757,121"/>
+<area shape="rect" id="node49" title=" " alt="" coords="4781,80,4972,121"/>
+<area shape="rect" id="node50" title=" " alt="" coords="4996,80,5155,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="2216,705,2295,732"/>
+<area shape="rect" id="node4" title=" " alt="" coords="2677,705,2876,732"/>
+<area shape="rect" id="node5" href="$abstract__strategy_8h.html" title=" " alt="" coords="3094,534,3273,561"/>
+<area shape="rect" id="node8" title=" " alt="" coords="2902,705,3054,732"/>
+<area shape="rect" id="node9" title=" " alt="" coords="3079,705,3211,732"/>
+<area shape="rect" id="node10" title=" " alt="" coords="3235,705,3377,732"/>
+<area shape="rect" id="node11" title=" " alt="" coords="4056,705,4169,732"/>
+<area shape="rect" id="node12" title=" " alt="" coords="3485,705,3617,732"/>
+<area shape="rect" id="node13" title=" " alt="" coords="3641,705,3715,732"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1413,616,1559,657"/>
+<area shape="rect" id="node17" title=" " alt="" coords="3402,705,3461,732"/>
+<area shape="rect" id="node20" href="$robot_8h.html" title=" " alt="" coords="1058,348,1159,375"/>
+<area shape="rect" id="node22" title=" " alt="" coords="658,423,850,479"/>
+<area shape="rect" id="node23" title=" " alt="" coords="874,430,1093,471"/>
+<area shape="rect" id="node24" title=" " alt="" coords="1117,430,1324,471"/>
+<area shape="rect" id="node25" title=" " alt="" coords="1648,423,1804,479"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1399,430,1573,471"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1829,430,2045,471"/>
+<area shape="rect" id="node31" title=" " alt="" coords="1312,251,1481,293"/>
+<area shape="rect" id="node35" title=" " alt="" coords="1505,251,1685,293"/>
+<area shape="rect" id="node36" title=" " alt="" coords="1709,251,1889,293"/>
+<area shape="rect" id="node37" title=" " alt="" coords="1913,251,2093,293"/>
+<area shape="rect" id="node38" title=" " alt="" coords="2117,251,2297,293"/>
+<area shape="rect" id="node39" title=" " alt="" coords="2321,244,2501,300"/>
+<area shape="rect" id="node40" title=" " alt="" coords="2525,244,2705,300"/>
+<area shape="rect" id="node41" title=" " alt="" coords="2730,251,2911,293"/>
+<area shape="rect" id="node42" title=" " alt="" coords="2936,244,3119,300"/>
+<area shape="rect" id="node43" title=" " alt="" coords="3143,251,3323,293"/>
+</map>
diff --git a/doc/html/grasp__cell__routine_8cpp__incl.md5 b/doc/html/grasp__cell__routine_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d3d938187375f9be8783e1b4b700ee4a78944e87
--- /dev/null
+++ b/doc/html/grasp__cell__routine_8cpp__incl.md5
@@ -0,0 +1 @@
+8579314c6cda1ec09d9dba443a55c673
\ No newline at end of file
diff --git a/doc/html/grasp__cell__routine_8cpp__incl.png b/doc/html/grasp__cell__routine_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b3b9e0fd5da12b14468424873dd243b16eebd5f
Binary files /dev/null and b/doc/html/grasp__cell__routine_8cpp__incl.png differ
diff --git a/doc/html/grasp__cell__routine_8cpp_source.html b/doc/html/grasp__cell__routine_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ba21c09ef911538010164ff483269cbef3de101
--- /dev/null
+++ b/doc/html/grasp__cell__routine_8cpp_source.html
@@ -0,0 +1,111 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: grasp_cell_routine.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">grasp_cell_routine.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="grasp__cell__routine_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__loader_8h.html">impl/map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__mediator_8h.html">impl/moveit_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__grasp__mediator_8h.html">impl/moveit_grasp_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__moveit__decorator_8h.html">impl/wing_moveit_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__robot_8h.html">impl/moveit_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="collision__helper_8h.html">impl/collision_helper.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cuboid__reader_8h.html">reader/cuboid_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_generator.h&gt;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_data.h&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/two_finger_grasp_filter.h&gt;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;moveit_grasps/grasp_planner.h&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">   26</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv){</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    ros::init(argc, argv, <span class="stringliteral">&quot;grasp_cell_routine&quot;</span>);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; nnh = std::make_shared&lt;ros::NodeHandle&gt;();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    ros::AsyncSpinner spinner(1);</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    spinner.start();</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    XmlRpc::XmlRpcValue map, task;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    nnh-&gt;getParam(<span class="stringliteral">&quot;/data&quot;</span>,map);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    nnh-&gt;getParam(<span class="stringliteral">&quot;/task/groups&quot;</span>,task);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a>* map_loader = <span class="keyword">new</span> <a class="code" href="classMap__loader.html">Map_loader</a>(map, task);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;          </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    ros::Publisher* pub = <span class="keyword">new</span> ros::Publisher(nnh-&gt;advertise&lt; visualization_msgs::MarkerArray &gt;(<span class="stringliteral">&quot;visualization_marker_array&quot;</span>, 1)); <span class="comment">//refractor</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>* mediator = <span class="keyword">new</span> <a class="code" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a>(map_loader-&gt;<a class="code" href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">task_grasps</a>(), pub, nnh);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a>* moveit_grasp_mediator = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a>*<span class="keyword">&gt;</span>(mediator);    </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    moveit_grasp_mediator-&gt;<a class="code" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">mediate</a>();</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordflow">while</span> (ros::ok()){</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        ros::spinOnce();</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    }</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="amoveit__robot_8h_html"><div class="ttname"><a href="moveit__robot_8h.html">moveit_robot.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="acuboid__reader_8h_html"><div class="ttname"><a href="cuboid__reader_8h.html">cuboid_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ace031e7894f77a460ce5782a6e3160e8"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00141">moveit_grasp_mediator.cpp:141</a></div></div>
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html"><div class="ttname"><a href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00023">moveit_grasp_mediator.h:23</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aa9772fe2bd594967b8f7b980db442ca5"><div class="ttname"><a href="classAbstract__map__loader.html#aa9772fe2bd594967b8f7b980db442ca5">Abstract_map_loader::task_grasps</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &amp; task_grasps()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00046">abstract_map_loader.h:46</a></div></div>
+<div class="ttc" id="amoveit__grasp__mediator_8h_html"><div class="ttname"><a href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></div></div>
+<div class="ttc" id="awing__moveit__decorator_8h_html"><div class="ttname"><a href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="amap__loader_8h_html"><div class="ttname"><a href="map__loader_8h.html">map_loader.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="acollision__helper_8h_html"><div class="ttname"><a href="collision__helper_8h.html">collision_helper.h</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassMap__loader_html"><div class="ttname"><a href="classMap__loader.html">Map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8h_source.html#l00010">map_loader.h:10</a></div></div>
+<div class="ttc" id="amoveit__mediator_8h_html"><div class="ttname"><a href="moveit__mediator_8h.html">moveit_mediator.h</a></div></div>
+<div class="ttc" id="agrasp__cell__routine_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="grasp__cell__routine_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="grasp__cell__routine_8cpp_source.html#l00026">grasp_cell_routine.cpp:26</a></div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html
new file mode 100644
index 0000000000000000000000000000000000000000..1a0743c0d3b07d21f6494fa15f086939238d5305
--- /dev/null
+++ b/doc/html/hierarchy.html
@@ -0,0 +1,82 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Hierarchy</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Class Hierarchy</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">
+<p><a href="inherits.html">Go to the graphical class hierarchy</a></p>
+This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__base.html" target="_self">Abstract_base</a></td><td class="desc">Abstract base class </td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSimple__base.html" target="_self">Simple_base</a></td><td class="desc">Refiend base abstraction </td></tr>
+<tr id="row_1_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__base__implementation.html" target="_self">Abstract_base_implementation</a></td><td class="desc">Abstract base implementation </td></tr>
+<tr id="row_1_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSimple__base__implementation.html" target="_self">Simple_base_implementation</a></td><td class="desc">Refined base implementation </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_2_" class="arrow" onclick="toggleFolder('2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__map__loader.html" target="_self">Abstract_map_loader</a></td><td class="desc"></td></tr>
+<tr id="row_2_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMap__loader.html" target="_self">Map_loader</a></td><td class="desc"></td></tr>
+<tr id="row_3_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__mediator.html" target="_self">Abstract_mediator</a></td><td class="desc">Abstract mediator </td></tr>
+<tr id="row_3_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBase__calculation__mediator.html" target="_self">Base_calculation_mediator</a></td><td class="desc">Concrete <a class="el" href="classMediator.html">Mediator</a> </td></tr>
+<tr id="row_3_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMediator.html" target="_self">Mediator</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_3_2_" class="arrow" onclick="toggleFolder('3_2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__mediator.html" target="_self">Moveit_mediator</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__grasp__mediator.html" target="_self">Moveit_grasp_mediator</a></td><td class="desc"></td></tr>
+<tr id="row_4_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__param__reader.html" target="_self">Abstract_param_reader</a></td><td class="desc">Abstract ROS-Param reader class </td></tr>
+<tr id="row_4_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCuboid__reader.html" target="_self">Cuboid_reader</a></td><td class="desc">Cuboid reader </td></tr>
+<tr id="row_4_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classJob__reader.html" target="_self">Job_reader</a></td><td class="desc">Job reader </td></tr>
+<tr id="row_4_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMap__reader.html" target="_self">Map_reader</a></td><td class="desc">Map reader </td></tr>
+<tr id="row_4_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRobot__reader.html" target="_self">Robot_reader</a></td><td class="desc"><a class="el" href="classRobot.html">Robot</a> reader </td></tr>
+<tr id="row_4_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classTask__space__reader.html" target="_self">Task_space_reader</a></td><td class="desc">Task space reader </td></tr>
+<tr id="row_4_5_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classTs__reader.html" target="_self">Ts_reader</a></td><td class="desc">TS reader </td></tr>
+<tr id="row_4_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__reader.html" target="_self">Wing_reader</a></td><td class="desc"><a class="el" href="classWing.html">Wing</a> reader </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot.html" target="_self">Abstract_robot</a></td><td class="desc"></td></tr>
+<tr id="row_5_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_5_0_" class="arrow" onclick="toggleFolder('5_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__decorator.html" target="_self">Abstract_robot_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_5_0_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPanda__decorator.html" target="_self">Panda_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_5_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCeti__robot.html" target="_self">Ceti_robot</a></td><td class="desc">Concrete Ceti-Robot </td></tr>
+<tr id="row_5_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_5_2_" class="arrow" onclick="toggleFolder('5_2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRobot.html" target="_self">Robot</a></td><td class="desc"></td></tr>
+<tr id="row_5_2_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__robot.html" target="_self">Moveit_robot</a></td><td class="desc"></td></tr>
+<tr id="row_6_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__element.html" target="_self">Abstract_robot_element</a></td><td class="desc"></td></tr>
+<tr id="row_6_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_6_0_" class="arrow" onclick="toggleFolder('6_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__robot__element__decorator.html" target="_self">Abstract_robot_element_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_6_0_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classField__rviz__decorator.html" target="_self">Field_rviz_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_6_0_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classLog__decorator.html" target="_self">Log_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_6_0_2_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__moveit__decorator.html" target="_self">Wing_moveit_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_6_0_3_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing__rviz__decorator.html" target="_self">Wing_rviz_decorator</a></td><td class="desc"></td></tr>
+<tr id="row_6_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classField.html" target="_self">Field</a></td><td class="desc"></td></tr>
+<tr id="row_6_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_6_2_" class="arrow" onclick="toggleFolder('6_2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPanel.html" target="_self">Panel</a></td><td class="desc"></td></tr>
+<tr id="row_6_2_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMoveit__panel.html" target="_self">Moveit_panel</a></td><td class="desc"></td></tr>
+<tr id="row_6_2_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRviz__panel.html" target="_self">Rviz_panel</a></td><td class="desc"></td></tr>
+<tr id="row_6_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWing.html" target="_self">Wing</a></td><td class="desc"></td></tr>
+<tr id="row_7_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAbstract__strategy.html" target="_self">Abstract_strategy</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classBase__by__rotation.html" target="_self">Base_by_rotation</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>CollisionEnvFCL</b></td><td class="desc"></td></tr>
+<tr id="row_8_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classCollision__helper.html" target="_self">Collision_helper</a></td><td class="desc"></td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structjob__data.html" target="_self">job_data</a></td><td class="desc"></td></tr>
+<tr id="row_10_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structobject__data.html" target="_self">object_data</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structwing__BP.html" target="_self">wing_BP</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__mediator_8cpp.html b/doc/html/impl_2abstract__mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f0e139b6c5c7e09d8de637ca73d0d1fd0cbbcd1
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8cpp.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/abstract_mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__mediator_8cpp__incl.png" border="0" usemap="#abstract__mediator_8cpp" alt=""/></div>
+<map name="abstract__mediator_8cpp" id="abstract__mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="2119,5,2287,32"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="2109,80,2296,107"/>
+<area shape="rect" title=" " alt="" coords="1502,519,1581,546"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1878,244,2039,271"/>
+<area shape="rect" title=" " alt="" coords="2832,519,2984,546"/>
+<area shape="rect" title=" " alt="" coords="3009,519,3141,546"/>
+<area shape="rect" title=" " alt="" coords="3165,519,3307,546"/>
+<area shape="rect" title=" " alt="" coords="1999,519,2113,546"/>
+<area shape="rect" title=" " alt="" coords="2578,519,2710,546"/>
+<area shape="rect" title=" " alt="" coords="2734,519,2807,546"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1629,423,1779,464"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1160,155,1261,181"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2123,341,2283,367"/>
+<area shape="rect" title=" " alt="" coords="1777,519,1975,546"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="2321,341,2500,367"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="2478,430,2682,457"/>
+<area shape="rect" title=" " alt="" coords="2404,519,2553,546"/>
+<area shape="rect" title=" " alt="" coords="1605,512,1752,553"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1465,333,1629,375"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1653,341,1752,367"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1453,244,1651,271"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1123,341,1219,367"/>
+<area shape="rect" title=" " alt="" coords="93,229,285,285"/>
+<area shape="rect" title=" " alt="" coords="309,237,528,278"/>
+<area shape="rect" title=" " alt="" coords="553,237,759,278"/>
+<area shape="rect" title=" " alt="" coords="783,229,939,285"/>
+<area shape="rect" title=" " alt="" coords="1015,237,1188,278"/>
+<area shape="rect" title=" " alt="" coords="1212,237,1428,278"/>
+<area shape="rect" title=" " alt="" coords="1293,333,1440,375"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="2232,423,2403,464"/>
+<area shape="rect" title=" " alt="" coords="2137,519,2196,546"/>
+<area shape="rect" title=" " alt="" coords="2220,512,2380,553"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2abstract__mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__mediator_8cpp__incl.map b/doc/html/impl_2abstract__mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..886f133e513c81db5f74a0ccb6777c701e8c378b
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8cpp__incl.map
@@ -0,0 +1,34 @@
+<map id="abstract_mediator.cpp" name="abstract_mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2119,5,2287,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="2109,80,2296,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1502,519,1581,546"/>
+<area shape="rect" id="node4" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1878,244,2039,271"/>
+<area shape="rect" id="node9" title=" " alt="" coords="2832,519,2984,546"/>
+<area shape="rect" id="node10" title=" " alt="" coords="3009,519,3141,546"/>
+<area shape="rect" id="node11" title=" " alt="" coords="3165,519,3307,546"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1999,519,2113,546"/>
+<area shape="rect" id="node13" title=" " alt="" coords="2578,519,2710,546"/>
+<area shape="rect" id="node14" title=" " alt="" coords="2734,519,2807,546"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1629,423,1779,464"/>
+<area shape="rect" id="node17" href="$robot_8h.html" title=" " alt="" coords="1160,155,1261,181"/>
+<area shape="rect" id="node29" href="$wing__reader_8h.html" title=" " alt="" coords="2123,341,2283,367"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1777,519,1975,546"/>
+<area shape="rect" id="node6" href="$abstract__strategy_8h.html" title=" " alt="" coords="2321,341,2500,367"/>
+<area shape="rect" id="node7" href="$abstract__map__loader_8h.html" title=" " alt="" coords="2478,430,2682,457"/>
+<area shape="rect" id="node8" title=" " alt="" coords="2404,519,2553,546"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1605,512,1752,553"/>
+<area shape="rect" id="node18" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1465,333,1629,375"/>
+<area shape="rect" id="node19" href="$wing_8h.html" title=" " alt="" coords="1653,341,1752,367"/>
+<area shape="rect" id="node20" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1453,244,1651,271"/>
+<area shape="rect" id="node22" href="$impl_2field_8h.html" title=" " alt="" coords="1123,341,1219,367"/>
+<area shape="rect" id="node23" title=" " alt="" coords="93,229,285,285"/>
+<area shape="rect" id="node24" title=" " alt="" coords="309,237,528,278"/>
+<area shape="rect" id="node25" title=" " alt="" coords="553,237,759,278"/>
+<area shape="rect" id="node26" title=" " alt="" coords="783,229,939,285"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1015,237,1188,278"/>
+<area shape="rect" id="node28" title=" " alt="" coords="1212,237,1428,278"/>
+<area shape="rect" id="node21" title=" " alt="" coords="1293,333,1440,375"/>
+<area shape="rect" id="node30" href="$abstract__param__reader_8h.html" title=" " alt="" coords="2232,423,2403,464"/>
+<area shape="rect" id="node31" title=" " alt="" coords="2137,519,2196,546"/>
+<area shape="rect" id="node32" title=" " alt="" coords="2220,512,2380,553"/>
+</map>
diff --git a/doc/html/impl_2abstract__mediator_8cpp__incl.md5 b/doc/html/impl_2abstract__mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e9ddb65d67519cae817803ca83735bbb645f9c1c
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+00b045ec8a42f33abf047b93d78d207b
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__mediator_8cpp__incl.png b/doc/html/impl_2abstract__mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0e0e92854d48a850d2c00c7a1c4f8b1804cb0821
Binary files /dev/null and b/doc/html/impl_2abstract__mediator_8cpp__incl.png differ
diff --git a/doc/html/impl_2abstract__mediator_8cpp_source.html b/doc/html/impl_2abstract__mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2dd0d4e644f66a1e8b60a4bdb013e82f1bcd1e8d
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8cpp_source.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2abstract__mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">    4</a></span>&#160;std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator::generate_Ground</a>(<span class="keyword">const</span> tf2::Vector3 origin, <span class="keyword">const</span> <span class="keywordtype">float</span> diameter, <span class="keywordtype">float</span> resolution){</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;  std::vector&lt;pcl::PointXYZ&gt; ground_plane; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;  </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">float</span> x = origin.getX() - diameter * 1.5; x &lt;= origin.getX() + diameter * 1.5; x += resolution){</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">float</span> y = origin.getY() - diameter * 1.5; y &lt;= origin.getY() + diameter * 1.5; y += resolution){</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;      pcl::PointXYZ point(x,y, 0.4425f);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;      ground_plane.push_back(point);     </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    }</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;  }</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;  <span class="keywordflow">return</span> ground_plane;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;}</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">   16</a></span>&#160;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr <a class="code" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a>(std::vector&lt;pcl::PointXYZ&gt;&amp; vector){</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;  pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr task_voxel(<span class="keyword">new</span> pcl::PointCloud&lt; pcl::PointXYZ &gt;);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;  <span class="keywordflow">for</span>(pcl::PointXYZ&amp; point : vector)</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    task_voxel-&gt;push_back(point);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;  </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;  <span class="keywordflow">return</span> task_voxel;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__mediator_html_a26d47b6d6d64a8eb4b096fcb5f78b389"><div class="ttname"><a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00016">impl/abstract_mediator.cpp:16</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0127bf58ba90cd82b39b0dfe4dfbe88a"><div class="ttname"><a href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator::generate_Ground</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_Ground(const tf2::Vector3 origin, const float diameter, float resolution)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00004">impl/abstract_mediator.cpp:4</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__mediator_8h.html b/doc/html/impl_2abstract__mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..7b03c567cab73ed18feeb161e45fbb57a12b661a
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h.html
@@ -0,0 +1,194 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle">
+<div class="title">impl/abstract_mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &lt;octomap/octomap.h&gt;</code><br />
+<code>#include &lt;pcl/point_cloud.h&gt;</code><br />
+<code>#include &lt;pcl/octree/octree.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/abstract_mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__mediator_8h__incl.png" border="0" usemap="#abstract__mediator_8h" alt=""/></div>
+<map name="abstract__mediator_8h" id="abstract__mediator_8h">
+<area shape="rect" title=" " alt="" coords="2126,5,2279,32"/>
+<area shape="rect" title=" " alt="" coords="1502,445,1581,471"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1878,169,2039,196"/>
+<area shape="rect" title=" " alt="" coords="2832,445,2984,471"/>
+<area shape="rect" title=" " alt="" coords="3009,445,3141,471"/>
+<area shape="rect" title=" " alt="" coords="3165,445,3307,471"/>
+<area shape="rect" title=" " alt="" coords="1999,445,2113,471"/>
+<area shape="rect" title=" " alt="" coords="2578,445,2710,471"/>
+<area shape="rect" title=" " alt="" coords="2734,445,2807,471"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1629,348,1779,389"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1160,80,1261,107"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2123,266,2283,293"/>
+<area shape="rect" title=" " alt="" coords="1777,445,1975,471"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="2321,266,2500,293"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="2478,355,2682,382"/>
+<area shape="rect" title=" " alt="" coords="2404,445,2553,471"/>
+<area shape="rect" title=" " alt="" coords="1605,437,1752,479"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1465,259,1629,300"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1653,266,1752,293"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1453,169,1651,196"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1123,266,1219,293"/>
+<area shape="rect" title=" " alt="" coords="93,155,285,211"/>
+<area shape="rect" title=" " alt="" coords="309,162,528,203"/>
+<area shape="rect" title=" " alt="" coords="553,162,759,203"/>
+<area shape="rect" title=" " alt="" coords="783,155,939,211"/>
+<area shape="rect" title=" " alt="" coords="1015,162,1188,203"/>
+<area shape="rect" title=" " alt="" coords="1212,162,1428,203"/>
+<area shape="rect" title=" " alt="" coords="1293,259,1440,300"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="2232,348,2403,389"/>
+<area shape="rect" title=" " alt="" coords="2137,445,2196,471"/>
+<area shape="rect" title=" " alt="" coords="2220,437,2380,479"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__mediator_8h__dep__incl.png" border="0" usemap="#abstract__mediator_8hdep" alt=""/></div>
+<map name="abstract__mediator_8hdep" id="abstract__mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="402,5,555,32"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="171,80,264,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,155,139,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="584,155,773,181"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="276,229,444,256"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="405,80,552,107"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="797,155,923,181"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="677,80,845,107"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="163,155,271,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="577,229,781,256"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="398,155,559,181"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2abstract__mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator.  <a href="classAbstract__mediator.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwing__BP.html">wing_BP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a0a92ddf506735cefb1b043b5fbbad680"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">box_size</a>&#160;&#160;&#160;tf2::Vector3(0.0318f, 0.0636f, 0.091f)</td></tr>
+<tr class="separator:a0a92ddf506735cefb1b043b5fbbad680"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa42a37a844c5621fda56ec3030e0d10"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8h.html#aaa42a37a844c5621fda56ec3030e0d10">L_POS</a>&#160;&#160;&#160;tf2::Vector3(0,-0.6525f,0.4425f -0.005f)</td></tr>
+<tr class="separator:aaa42a37a844c5621fda56ec3030e0d10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae48206ef860db463980ca8ff4bedaddd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8h.html#ae48206ef860db463980ca8ff4bedaddd">M_POS</a>&#160;&#160;&#160;tf2::Vector3(0.6525f,0,0.4425f-0.005f)</td></tr>
+<tr class="separator:ae48206ef860db463980ca8ff4bedaddd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39a715cfc5408be39900e0fda32e4d02"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__mediator_8h.html#a39a715cfc5408be39900e0fda32e4d02">R_POS</a>&#160;&#160;&#160;tf2::Vector3(0,0.6525f,0.4425f -0.005f)</td></tr>
+<tr class="separator:a39a715cfc5408be39900e0fda32e4d02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a0a92ddf506735cefb1b043b5fbbad680"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a92ddf506735cefb1b043b5fbbad680">&#9670;&nbsp;</a></span>box_size</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define box_size&#160;&#160;&#160;tf2::Vector3(0.0318f, 0.0636f, 0.091f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00021">21</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa42a37a844c5621fda56ec3030e0d10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa42a37a844c5621fda56ec3030e0d10">&#9670;&nbsp;</a></span>L_POS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define L_POS&#160;&#160;&#160;tf2::Vector3(0,-0.6525f,0.4425f -0.005f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00023">23</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ae48206ef860db463980ca8ff4bedaddd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae48206ef860db463980ca8ff4bedaddd">&#9670;&nbsp;</a></span>M_POS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define M_POS&#160;&#160;&#160;tf2::Vector3(0.6525f,0,0.4425f-0.005f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00024">24</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a39a715cfc5408be39900e0fda32e4d02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a39a715cfc5408be39900e0fda32e4d02">&#9670;&nbsp;</a></span>R_POS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define R_POS&#160;&#160;&#160;tf2::Vector3(0,0.6525f,0.4425f -0.005f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00022">22</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__mediator_8h__dep__incl.map b/doc/html/impl_2abstract__mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..499872808a676f1523bd993bc953d1fd682fdfcc
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h__dep__incl.map
@@ -0,0 +1,13 @@
+<map id="abstract_mediator.h" name="abstract_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="402,5,555,32"/>
+<area shape="rect" id="node2" href="$mediator_8h.html" title=" " alt="" coords="171,80,264,107"/>
+<area shape="rect" id="node3" href="$base__routine_8cpp.html" title=" " alt="" coords="5,155,139,181"/>
+<area shape="rect" id="node5" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="584,155,773,181"/>
+<area shape="rect" id="node6" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="276,229,444,256"/>
+<area shape="rect" id="node8" href="$moveit__mediator_8h.html" title=" " alt="" coords="405,80,552,107"/>
+<area shape="rect" id="node9" href="$cell__routine_8cpp.html" title=" " alt="" coords="797,155,923,181"/>
+<area shape="rect" id="node11" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="677,80,845,107"/>
+<area shape="rect" id="node4" href="$mediator_8cpp.html" title=" " alt="" coords="163,155,271,181"/>
+<area shape="rect" id="node7" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="577,229,781,256"/>
+<area shape="rect" id="node10" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="398,155,559,181"/>
+</map>
diff --git a/doc/html/impl_2abstract__mediator_8h__dep__incl.md5 b/doc/html/impl_2abstract__mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a8234486a621d6f7f0ed280e4f03fbae4ff05bbb
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+91a84cebf0553e2fa06152363dd67df3
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__mediator_8h__dep__incl.png b/doc/html/impl_2abstract__mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e59cfac7d5f80c5be3eb4dbccd3cba8fef19c288
Binary files /dev/null and b/doc/html/impl_2abstract__mediator_8h__dep__incl.png differ
diff --git a/doc/html/impl_2abstract__mediator_8h__incl.map b/doc/html/impl_2abstract__mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..74178393229fb6140c959d2aae397d889073627a
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h__incl.map
@@ -0,0 +1,33 @@
+<map id="abstract_mediator.h" name="abstract_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="2126,5,2279,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1502,445,1581,471"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1878,169,2039,196"/>
+<area shape="rect" id="node8" title=" " alt="" coords="2832,445,2984,471"/>
+<area shape="rect" id="node9" title=" " alt="" coords="3009,445,3141,471"/>
+<area shape="rect" id="node10" title=" " alt="" coords="3165,445,3307,471"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1999,445,2113,471"/>
+<area shape="rect" id="node12" title=" " alt="" coords="2578,445,2710,471"/>
+<area shape="rect" id="node13" title=" " alt="" coords="2734,445,2807,471"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1629,348,1779,389"/>
+<area shape="rect" id="node16" href="$robot_8h.html" title=" " alt="" coords="1160,80,1261,107"/>
+<area shape="rect" id="node28" href="$wing__reader_8h.html" title=" " alt="" coords="2123,266,2283,293"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1777,445,1975,471"/>
+<area shape="rect" id="node5" href="$abstract__strategy_8h.html" title=" " alt="" coords="2321,266,2500,293"/>
+<area shape="rect" id="node6" href="$abstract__map__loader_8h.html" title=" " alt="" coords="2478,355,2682,382"/>
+<area shape="rect" id="node7" title=" " alt="" coords="2404,445,2553,471"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1605,437,1752,479"/>
+<area shape="rect" id="node17" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1465,259,1629,300"/>
+<area shape="rect" id="node18" href="$wing_8h.html" title=" " alt="" coords="1653,266,1752,293"/>
+<area shape="rect" id="node19" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1453,169,1651,196"/>
+<area shape="rect" id="node21" href="$impl_2field_8h.html" title=" " alt="" coords="1123,266,1219,293"/>
+<area shape="rect" id="node22" title=" " alt="" coords="93,155,285,211"/>
+<area shape="rect" id="node23" title=" " alt="" coords="309,162,528,203"/>
+<area shape="rect" id="node24" title=" " alt="" coords="553,162,759,203"/>
+<area shape="rect" id="node25" title=" " alt="" coords="783,155,939,211"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1015,162,1188,203"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1212,162,1428,203"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1293,259,1440,300"/>
+<area shape="rect" id="node29" href="$abstract__param__reader_8h.html" title=" " alt="" coords="2232,348,2403,389"/>
+<area shape="rect" id="node30" title=" " alt="" coords="2137,445,2196,471"/>
+<area shape="rect" id="node31" title=" " alt="" coords="2220,437,2380,479"/>
+</map>
diff --git a/doc/html/impl_2abstract__mediator_8h__incl.md5 b/doc/html/impl_2abstract__mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f422680bce7ee62e7651bae636825956040315bd
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h__incl.md5
@@ -0,0 +1 @@
+f69095ce0299605889a864015261e415
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__mediator_8h__incl.png b/doc/html/impl_2abstract__mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0f7a05f8f570b3d36a41c6577a1fa7bbc29cd3ce
Binary files /dev/null and b/doc/html/impl_2abstract__mediator_8h__incl.png differ
diff --git a/doc/html/impl_2abstract__mediator_8h_source.html b/doc/html/impl_2abstract__mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5762aacd46babc26b9f7ea7feee8e26e02edc4a3
--- /dev/null
+++ b/doc/html/impl_2abstract__mediator_8h_source.html
@@ -0,0 +1,143 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2abstract__mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;octomap/octomap.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;pcl/octree/octree.h&gt;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">   21</a></span>&#160;<span class="preprocessor">#define box_size tf2::Vector3(0.0318f, 0.0636f, 0.091f)</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="impl_2abstract__mediator_8h.html#a39a715cfc5408be39900e0fda32e4d02">   22</a></span>&#160;<span class="preprocessor">#define R_POS tf2::Vector3(0,0.6525f,0.4425f -0.005f)</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="impl_2abstract__mediator_8h.html#aaa42a37a844c5621fda56ec3030e0d10">   23</a></span>&#160;<span class="preprocessor">#define L_POS tf2::Vector3(0,-0.6525f,0.4425f -0.005f)</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="impl_2abstract__mediator_8h.html#ae48206ef860db463980ca8ff4bedaddd">   24</a></span>&#160;<span class="preprocessor">#define M_POS tf2::Vector3(0.6525f,0,0.4425f-0.005f)</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="structwing__BP.html">   26</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structwing__BP.html">wing_BP</a> {</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">   27</a></span>&#160;    std::string <a class="code" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">name_</a>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">   28</a></span>&#160;    tf2::Transform <a class="code" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">pos_</a>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">   29</a></span>&#160;    tf2::Vector3 <a class="code" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">size_</a>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;};</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html">   33</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__mediator.html">Abstract_mediator</a> {</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">   35</a></span>&#160;    std::vector&lt;Abstract_robot*&gt; <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">   36</a></span>&#160;    std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">   37</a></span>&#160;    std::vector&lt;std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt;&gt; <a class="code" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a>;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">   38</a></span>&#160;    ros::Publisher* <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">   39</a></span>&#160;    std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">   40</a></span>&#160;    std::vector&lt;std::vector&lt;Abstract_robot_element*&gt;&gt; <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">   41</a></span>&#160;    std::string <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">   48</a></span>&#160;    <a class="code" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub) : <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>(objects), <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>(pub){</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    }</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">   51</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">set_result_vector</a>(std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt;&amp; res) {<a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a> = res;}</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">   52</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::vector&lt;Abstract_robot_element*&gt;&gt; <a class="code" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>;}</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">   53</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt;&amp; <a class="code" href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">result_vector</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a>;}</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">   54</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;Abstract_robot*&gt; <a class="code" href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">robots</a>(){<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>;}</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">   57</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string&amp; dirn) {<a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a> = dirn;}</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">   58</a></span>&#160;    <span class="keyword">inline</span> std::string&amp; <a class="code" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a>;}</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr <a class="code" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt;pcl::PointXYZ&gt;&amp; vector);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">generate_Ground</a>(<span class="keyword">const</span> tf2::Vector3 origin, <span class="keyword">const</span> <span class="keywordtype">float</span> diameter, <span class="keywordtype">float</span> resolution);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot)=0; </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">set_wings</a>(std::vector&lt;std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; wbp)=0;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a>( <span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot)=0;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a>()=0;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a>(std::bitset&lt;3&gt;&amp; wing, <span class="keywordtype">int</span>&amp; robot)=0;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;};</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="astructwing__BP_html_a6396b771cdeff0b866020e3293a84eca"><div class="ttname"><a href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">wing_BP::pos_</a></div><div class="ttdeci">tf2::Transform pos_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00028">impl/abstract_mediator.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a42b339e1ffa0b206129cc11fa300b217"><div class="ttname"><a href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator::Abstract_mediator</a></div><div class="ttdeci">Abstract_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00048">impl/abstract_mediator.h:48</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a4580d0c30a62cc91203b950694f98e98"><div class="ttname"><a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">Abstract_mediator::relative_bounds_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt; relative_bounds_</div><div class="ttdoc">total bound a workspace</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00037">impl/abstract_mediator.h:37</a></div></div>
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a24f9a262c71f04f66550da4f61746e62"><div class="ttname"><a href="classAbstract__mediator.html#a24f9a262c71f04f66550da4f61746e62">Abstract_mediator::robots</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00054">impl/abstract_mediator.h:54</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a77682034ad695305a6781b53af93d05e"><div class="ttname"><a href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">Abstract_mediator::pub_</a></div><div class="ttdeci">ros::Publisher * pub_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00038">impl/abstract_mediator.h:38</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="astructwing__BP_html"><div class="ttname"><a href="structwing__BP.html">wing_BP</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00026">impl/abstract_mediator.h:26</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a7dbd0e2d480c9a496aa2fb77a14ab592"><div class="ttname"><a href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator::check_collision</a></div><div class="ttdeci">virtual bool check_collision(const int &amp;robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a64323b190e965287422f7b840bc1b95f"><div class="ttname"><a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">Abstract_mediator::set_dirname</a></div><div class="ttdeci">void set_dirname(std::string &amp;dirn)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00057">impl/abstract_mediator.h:57</a></div></div>
+<div class="ttc" id="astructwing__BP_html_a294e3a77e24dec89f73422224f4091c9"><div class="ttname"><a href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">wing_BP::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00027">impl/abstract_mediator.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><div class="ttname"><a href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00040">impl/abstract_mediator.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a26d47b6d6d64a8eb4b096fcb5f78b389"><div class="ttname"><a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00016">impl/abstract_mediator.cpp:16</a></div></div>
+<div class="ttc" id="astructwing__BP_html_ad3cb0666a2473c6a2c5397f393812f56"><div class="ttname"><a href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">wing_BP::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00029">impl/abstract_mediator.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9a48fc344129cd16dc0f20be2d9368ab"><div class="ttname"><a href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">Abstract_mediator::result_vector_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; result_vector_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00039">impl/abstract_mediator.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad4565f4b98c689289ddda9e7507736ae"><div class="ttname"><a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator::dirname_</a></div><div class="ttdeci">std::string dirname_</div><div class="ttdoc">Dirname of the reference protobuff.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00041">impl/abstract_mediator.h:41</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9a4028042141d35f7429f92db32599c2"><div class="ttname"><a href="classAbstract__mediator.html#a9a4028042141d35f7429f92db32599c2">Abstract_mediator::result_vector</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; &amp; result_vector()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00053">impl/abstract_mediator.h:53</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_adcd1ada33f056dadda3dc17a6299b731"><div class="ttname"><a href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator::mediate</a></div><div class="ttdeci">virtual void mediate()=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0c102b5e272139492ab04ce0d4e43234"><div class="ttname"><a href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator::connect_robots</a></div><div class="ttdeci">virtual void connect_robots(Abstract_robot *robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9838c41eeb97aef668cd7213f0e2e9a6"><div class="ttname"><a href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">Abstract_mediator::wings</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00052">impl/abstract_mediator.h:52</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0127bf58ba90cd82b39b0dfe4dfbe88a"><div class="ttname"><a href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator::generate_Ground</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_Ground(const tf2::Vector3 origin, const float diameter, float resolution)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00004">impl/abstract_mediator.cpp:4</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_af92b5d1cb508826454ae3ea0e5cbf5f2"><div class="ttname"><a href="classAbstract__mediator.html#af92b5d1cb508826454ae3ea0e5cbf5f2">Abstract_mediator::set_wings</a></div><div class="ttdeci">virtual void set_wings(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a78a9e79c0a97238c7d76ec1a3cc7349c"><div class="ttname"><a href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">Abstract_mediator::objects_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; objects_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00036">impl/abstract_mediator.h:36</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a45f051cc8b3816677c638f805e805838"><div class="ttname"><a href="classAbstract__mediator.html#a45f051cc8b3816677c638f805e805838">Abstract_mediator::set_result_vector</a></div><div class="ttdeci">void set_result_vector(std::vector&lt; std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00051">impl/abstract_mediator.h:51</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_aafb2967bb33e9cc4ba0dcf54f29be144"><div class="ttname"><a href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator::build_wings</a></div><div class="ttdeci">virtual void build_wings(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad651113a7bd5059643177c7b5fc08b8d"><div class="ttname"><a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">Abstract_mediator::dirname</a></div><div class="ttdeci">std::string &amp; dirname()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00058">impl/abstract_mediator.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot_8h.html b/doc/html/impl_2abstract__robot_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..09274d6dbb4dce420fea3ad6741e19bef16a1a01
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h.html
@@ -0,0 +1,221 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a>  </div>
+  <div class="headertitle">
+<div class="title">impl/abstract_robot.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__strategy_8h_source.html">impl/abstract_strategy.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/abstract_robot.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot_8h__incl.png" border="0" usemap="#abstract__robot_8h" alt=""/></div>
+<map name="abstract__robot_8h" id="abstract__robot_8h">
+<area shape="rect" title=" " alt="" coords="412,5,540,32"/>
+<area shape="rect" title=" " alt="" coords="399,251,478,278"/>
+<area shape="rect" title=" " alt="" coords="177,251,375,278"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="513,80,692,107"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="289,155,439,196"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="627,162,831,189"/>
+<area shape="rect" title=" " alt="" coords="1216,251,1365,278"/>
+<area shape="rect" title=" " alt="" coords="1389,251,1541,278"/>
+<area shape="rect" title=" " alt="" coords="502,251,634,278"/>
+<area shape="rect" title=" " alt="" coords="658,251,801,278"/>
+<area shape="rect" title=" " alt="" coords="825,251,938,278"/>
+<area shape="rect" title=" " alt="" coords="962,251,1094,278"/>
+<area shape="rect" title=" " alt="" coords="1118,251,1191,278"/>
+<area shape="rect" title=" " alt="" coords="5,244,152,285"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot_8h__dep__incl.png" border="0" usemap="#abstract__robot_8hdep" alt=""/></div>
+<map name="abstract__robot_8hdep" id="abstract__robot_8hdep">
+<area shape="rect" title=" " alt="" coords="920,5,1048,32"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="275,80,445,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="427,304,560,331"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="983,304,1108,331"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="1061,379,1229,405"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="819,155,973,181"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="571,229,664,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="1420,304,1609,331"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1285,229,1432,256"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="970,80,1038,107"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="176,155,323,181"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="61,229,208,256"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="233,229,343,256"/>
+<area shape="rect" href="base__by__rotation_8cpp.html" title=" " alt="" coords="39,304,201,331"/>
+<area shape="rect" href="map__loader_8cpp.html" title=" " alt="" coords="225,304,351,331"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="840,229,1008,256"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="585,304,693,331"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1413,379,1617,405"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="1234,304,1395,331"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="1105,155,1226,181"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="997,155,1080,181"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2abstract__robot_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a073c2dc3016a11f05027909f7e88dd40"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot_8h.html#a073c2dc3016a11f05027909f7e88dd40">left_size</a>&#160;&#160;&#160;tf2::Vector3(0.7f, 0.5f, 0.01f)</td></tr>
+<tr class="separator:a073c2dc3016a11f05027909f7e88dd40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84210660daefdf244d270c0e29020b6f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot_8h.html#a84210660daefdf244d270c0e29020b6f">mid_size</a>&#160;&#160;&#160;tf2::Vector3(0.5f, 0.7f, 0.01f)</td></tr>
+<tr class="separator:a84210660daefdf244d270c0e29020b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3a3a04dddd8d15a526b9227b42c0e4a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot_8h.html#ab3a3a04dddd8d15a526b9227b42c0e4a">right_size</a>&#160;&#160;&#160;tf2::Vector3(0.7f, 0.5f, 0.01f)</td></tr>
+<tr class="separator:ab3a3a04dddd8d15a526b9227b42c0e4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a6772e3f5ff2cf1ed8a24b23c0992dad1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a> { <br />
+&#160;&#160;<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4, 
+<br />
+&#160;&#160;<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0, 
+<br />
+&#160;&#160;<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4, 
+<br />
+&#160;&#160;<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0
+<br />
+ }</td></tr>
+<tr class="separator:a6772e3f5ff2cf1ed8a24b23c0992dad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a073c2dc3016a11f05027909f7e88dd40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a073c2dc3016a11f05027909f7e88dd40">&#9670;&nbsp;</a></span>left_size</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define left_size&#160;&#160;&#160;tf2::Vector3(0.7f, 0.5f, 0.01f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00011">11</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="a84210660daefdf244d270c0e29020b6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a84210660daefdf244d270c0e29020b6f">&#9670;&nbsp;</a></span>mid_size</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define mid_size&#160;&#160;&#160;tf2::Vector3(0.5f, 0.7f, 0.01f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00012">12</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<a id="ab3a3a04dddd8d15a526b9227b42c0e4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3a3a04dddd8d15a526b9227b42c0e4a">&#9670;&nbsp;</a></span>right_size</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define right_size&#160;&#160;&#160;tf2::Vector3(0.7f, 0.5f, 0.01f)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00010">10</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a6772e3f5ff2cf1ed8a24b23c0992dad1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6772e3f5ff2cf1ed8a24b23c0992dad1">&#9670;&nbsp;</a></span>wing_config</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"></a>RML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"></a>RM_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"></a>R_L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"></a>R__&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"></a>_ML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"></a>_M_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"></a>__L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"></a>___&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"></a>RML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"></a>RM_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"></a>R_L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"></a>R__&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"></a>_ML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"></a>_M_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"></a>__L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"></a>___&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__robot_8h_source.html#l00014">14</a> of file <a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot_8h__dep__incl.map b/doc/html/impl_2abstract__robot_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5f01b14ca1b16460a155b91965b88e572734c1e4
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h__dep__incl.map
@@ -0,0 +1,23 @@
+<map id="abstract_robot.h" name="abstract_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="920,5,1048,32"/>
+<area shape="rect" id="node2" href="$abstract__map__loader_8h.html" title=" " alt="" coords="275,80,445,107"/>
+<area shape="rect" id="node5" href="$base__routine_8cpp.html" title=" " alt="" coords="427,304,560,331"/>
+<area shape="rect" id="node8" href="$cell__routine_8cpp.html" title=" " alt="" coords="983,304,1108,331"/>
+<area shape="rect" id="node9" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="1061,379,1229,405"/>
+<area shape="rect" id="node11" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="819,155,973,181"/>
+<area shape="rect" id="node12" href="$mediator_8h.html" title=" " alt="" coords="571,229,664,256"/>
+<area shape="rect" id="node14" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="1420,304,1609,331"/>
+<area shape="rect" id="node16" href="$moveit__mediator_8h.html" title=" " alt="" coords="1285,229,1432,256"/>
+<area shape="rect" id="node19" href="$robot_8h.html" title=" " alt="" coords="970,80,1038,107"/>
+<area shape="rect" id="node3" href="$abstract__strategy_8h.html" title=" " alt="" coords="176,155,323,181"/>
+<area shape="rect" id="node4" href="$base__by__rotation_8h.html" title=" " alt="" coords="61,229,208,256"/>
+<area shape="rect" id="node7" href="$map__loader_8h.html" title=" " alt="" coords="233,229,343,256"/>
+<area shape="rect" id="node6" href="$base__by__rotation_8cpp.html" title=" " alt="" coords="39,304,201,331"/>
+<area shape="rect" id="node10" href="$map__loader_8cpp.html" title=" " alt="" coords="225,304,351,331"/>
+<area shape="rect" id="node18" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="840,229,1008,256"/>
+<area shape="rect" id="node13" href="$mediator_8cpp.html" title=" " alt="" coords="585,304,693,331"/>
+<area shape="rect" id="node15" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1413,379,1617,405"/>
+<area shape="rect" id="node17" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="1234,304,1395,331"/>
+<area shape="rect" id="node20" href="$moveit__robot_8h.html" title=" " alt="" coords="1105,155,1226,181"/>
+<area shape="rect" id="node21" href="$robot_8cpp.html" title=" " alt="" coords="997,155,1080,181"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot_8h__dep__incl.md5 b/doc/html/impl_2abstract__robot_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..eb3d6673854a49e5b48e53f553be54181994ffd3
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h__dep__incl.md5
@@ -0,0 +1 @@
+d6f7746bb2a62b735ed1515f3bfc1483
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot_8h__dep__incl.png b/doc/html/impl_2abstract__robot_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..8fd210338691c36577dc47448ac1a541f369c598
Binary files /dev/null and b/doc/html/impl_2abstract__robot_8h__dep__incl.png differ
diff --git a/doc/html/impl_2abstract__robot_8h__incl.map b/doc/html/impl_2abstract__robot_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..84638e12243d862d03a3eaf4c9c2582b58fe270d
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h__incl.map
@@ -0,0 +1,16 @@
+<map id="abstract_robot.h" name="abstract_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="412,5,540,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="399,251,478,278"/>
+<area shape="rect" id="node3" title=" " alt="" coords="177,251,375,278"/>
+<area shape="rect" id="node4" href="$abstract__strategy_8h.html" title=" " alt="" coords="513,80,692,107"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="289,155,439,196"/>
+<area shape="rect" id="node5" href="$abstract__map__loader_8h.html" title=" " alt="" coords="627,162,831,189"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1216,251,1365,278"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1389,251,1541,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="502,251,634,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="658,251,801,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="825,251,938,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="962,251,1094,278"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1118,251,1191,278"/>
+<area shape="rect" id="node14" title=" " alt="" coords="5,244,152,285"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot_8h__incl.md5 b/doc/html/impl_2abstract__robot_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..6cb01a3da18d4843432bdb7058820f860aa8e974
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h__incl.md5
@@ -0,0 +1 @@
+81c23cbe92f23db2b1825465ae3dd3f4
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot_8h__incl.png b/doc/html/impl_2abstract__robot_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f206a40a0a02ebc36d07e1429da0a02904c68dc9
Binary files /dev/null and b/doc/html/impl_2abstract__robot_8h__incl.png differ
diff --git a/doc/html/impl_2abstract__robot_8h_source.html b/doc/html/impl_2abstract__robot_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f7701ed711e3c4efea4c2ada7fda5967a2b1601b
--- /dev/null
+++ b/doc/html/impl_2abstract__robot_8h_source.html
@@ -0,0 +1,151 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_robot.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2abstract__robot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__strategy_8h.html">impl/abstract_strategy.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#ab3a3a04dddd8d15a526b9227b42c0e4a">   10</a></span>&#160;<span class="preprocessor">#define right_size tf2::Vector3(0.7f, 0.5f, 0.01f)</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a073c2dc3016a11f05027909f7e88dd40">   11</a></span>&#160;<span class="preprocessor">#define left_size tf2::Vector3(0.7f, 0.5f, 0.01f)</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a84210660daefdf244d270c0e29020b6f">   12</a></span>&#160;<span class="preprocessor">#define mid_size tf2::Vector3(0.5f, 0.7f, 0.01f)</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">   14</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>{</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">   15</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7,</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">   16</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6,</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">   17</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5,</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">   18</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4,</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">   19</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3,</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">   20</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2,</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">   21</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1,</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">   22</a></span>&#160;    <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;};</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classAbstract__robot.html">   25</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot.html">Abstract_robot</a> {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">   27</a></span>&#160;    std::string <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">   28</a></span>&#160;    tf2::Vector3 <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">   29</a></span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">   30</a></span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>;</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">   31</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>;</div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">   32</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>;</div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">   33</a></span>&#160;    std::bitset&lt;3&gt; <a class="code" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a>;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">   38</a></span>&#160;    <a class="code" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string&amp; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>) : <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>(<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>), <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>(<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>), <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>(<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>){</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>= tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.22f, 0, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()));</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( 0.4f, 0.4f, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// ++</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.4f, 0.4f, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// +-</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.4f, -0.4f, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">//-+</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( 0.4f, -0.4f, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>.getOrigin().getZ()))); <span class="comment">// --</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, 0.095f, 0))); <span class="comment">// ++</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, 0.095f, 0))); <span class="comment">// +-</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <a class="code" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a> = std::bitset&lt;3&gt;(0);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    };</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    </div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">   57</a></span>&#160;    <span class="keyword">inline</span> std::string&amp; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>;}</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">   58</a></span>&#160;    <span class="keyword">inline</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>;}</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">   59</a></span>&#160;    <span class="keyword">inline</span> tf2::Vector3&amp; <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>;}</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">   60</a></span>&#160;    <span class="keyword">inline</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>;}</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">   61</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>;}</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">   62</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3&amp; s) { <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a> = s;}</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">   63</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform&amp; t) { <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> = t;}</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">   64</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>;}</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">   65</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(<span class="keywordtype">float</span> deg) {tf2::Quaternion rot; rot.setRPY(0,0,deg); tf2::Transform t(rot, tf2::Vector3(0,0,0)); <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>= <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>* t;}</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">   66</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t) {tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(tf2::Quaternion(0,0,0,1), t); <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>*=<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>;}</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">   67</a></span>&#160;    <span class="keyword">inline</span> std::bitset&lt;3&gt; <a class="code" href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">observer_mask</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a>;}</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">   68</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">set_observer_mask</a>(<span class="keywordtype">int</span> i) {<a class="code" href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">observer_mask_</a> = std::bitset&lt;3&gt;(i);}</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a>()= 0;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; b)= 0;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj) =0;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;};</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot_html_acfcaa13dd3824464426f0557ec2e360d"><div class="ttname"><a href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot::notify</a></div><div class="ttdeci">virtual void notify()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aae8fb853afa438433797b9cc5008f1f2"><div class="ttname"><a href="classAbstract__robot.html#aae8fb853afa438433797b9cc5008f1f2">Abstract_robot::observer_mask_</a></div><div class="ttdeci">std::bitset&lt; 3 &gt; observer_mask_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00033">impl/abstract_robot.h:33</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a72694508ca6d5ada16236775402dd385"><div class="ttname"><a href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">Abstract_robot::rotate</a></div><div class="ttdeci">void rotate(float deg)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00065">impl/abstract_robot.h:65</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a></div><div class="ttdeci">@ RML</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00015">impl/abstract_robot.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aeb08dc2fa1ecdad08544fb77ff60d78e"><div class="ttname"><a href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot::check_single_object_collision</a></div><div class="ttdeci">virtual bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;b)=0</div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af29a9894b43fc8124de65712414168f4"><div class="ttname"><a href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">Abstract_robot::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00060">impl/abstract_robot.h:60</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a></div><div class="ttdeci">@ R__</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00018">impl/abstract_robot.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_abd68b299ae1d193e2c4d5ce89a7a2c61"><div class="ttname"><a href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">Abstract_robot::size</a></div><div class="ttdeci">void size(tf2::Vector3 &amp;s)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00062">impl/abstract_robot.h:62</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a></div><div class="ttdeci">@ RM_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00016">impl/abstract_robot.h:16</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ade9a130588307d054c1d68e861a01717"><div class="ttname"><a href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot::workload_checker</a></div><div class="ttdeci">virtual void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ab27017c6039446502704b443df934a2d"><div class="ttname"><a href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">Abstract_robot::set_tf</a></div><div class="ttdeci">void set_tf(tf2::Transform &amp;t)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00063">impl/abstract_robot.h:63</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a></div><div class="ttdeci">@ __L</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00021">impl/abstract_robot.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a126e52a7696cf030f5697dd93439775f"><div class="ttname"><a href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">Abstract_robot::translate</a></div><div class="ttdeci">void translate(tf2::Vector3 t)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00066">impl/abstract_robot.h:66</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a854a3c8c740dcb60e0ee347fcd5447f6"><div class="ttname"><a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot::tf_</a></div><div class="ttdeci">tf2::Transform tf_</div><div class="ttdoc">Pose of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00029">impl/abstract_robot.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a></div><div class="ttdeci">@ _M_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00020">impl/abstract_robot.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a704bd9522c6fdaff61cc7584ef20850c"><div class="ttname"><a href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot::Abstract_robot</a></div><div class="ttdeci">Abstract_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00038">impl/abstract_robot.h:38</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a></div><div class="ttdeci">@ _ML</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00019">impl/abstract_robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><div class="ttname"><a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">Name of robot.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00027">impl/abstract_robot.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a7befa194e7b39c8b9d60f1844f9d1a8b"><div class="ttname"><a href="classAbstract__robot.html#a7befa194e7b39c8b9d60f1844f9d1a8b">Abstract_robot::observer_mask</a></div><div class="ttdeci">std::bitset&lt; 3 &gt; observer_mask()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00067">impl/abstract_robot.h:67</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a></div><div class="ttdeci">@ R_L</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00017">impl/abstract_robot.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af92f5538f28fbe61687d70f15e84fb82"><div class="ttname"><a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdoc">Size of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00028">impl/abstract_robot.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a64ae098f7cadad8237e663658f038663"><div class="ttname"><a href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">Abstract_robot::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00061">impl/abstract_robot.h:61</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aef7449039e62cf8608dbd22222120289"><div class="ttname"><a href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">Abstract_robot::robot_root_bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; robot_root_bounds()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00064">impl/abstract_robot.h:64</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a></div><div class="ttdeci">@ ___</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00022">impl/abstract_robot.h:22</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></div><div class="ttdeci">wing_config</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00014">impl/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="aabstract__strategy_8h_html"><div class="ttname"><a href="abstract__strategy_8h.html">abstract_strategy.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a7f30d6f41a3f7cbdb9839c75b957b366"><div class="ttname"><a href="classAbstract__robot.html#a7f30d6f41a3f7cbdb9839c75b957b366">Abstract_robot::set_observer_mask</a></div><div class="ttdeci">void set_observer_mask(int i)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00068">impl/abstract_robot.h:68</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot__element_8h.html b/doc/html/impl_2abstract__robot__element_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..33d799bd7d7fbedeabec5f1add63678b26168e4a
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h.html
@@ -0,0 +1,99 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">impl/abstract_robot_element.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;visualization_msgs/MarkerArray.h&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/abstract_robot_element.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot__element_8h__incl.png" border="0" usemap="#abstract__robot__element_8h" alt=""/></div>
+<map name="abstract__robot__element_8h" id="abstract__robot__element_8h">
+<area shape="rect" title=" " alt="" coords="113,5,302,32"/>
+<area shape="rect" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" title=" " alt="" coords="108,87,307,114"/>
+<area shape="rect" title=" " alt="" coords="331,80,478,121"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot__element_8h__dep__incl.png" border="0" usemap="#abstract__robot__element_8hdep" alt=""/></div>
+<map name="abstract__robot__element_8hdep" id="abstract__robot__element_8hdep">
+<area shape="rect" title=" " alt="" coords="1357,5,1547,32"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="1713,319,1866,345"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="616,468,749,495"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="1847,543,2015,569"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="1339,468,1464,495"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1363,169,1491,196"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1713,244,1781,271"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1237,80,1414,121"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="209,169,271,196"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1717,87,1782,114"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="1565,393,1659,420"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="2388,468,2577,495"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1976,393,2123,420"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="1733,393,1901,420"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="2154,468,2262,495"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="2446,543,2650,569"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="1969,468,2130,495"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="749,244,920,271"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="448,319,595,345"/>
+<area shape="rect" href="base__by__rotation_8h.html" title=" " alt="" coords="499,393,645,420"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="923,393,1034,420"/>
+<area shape="rect" href="base__by__rotation_8cpp.html" title=" " alt="" coords="430,468,591,495"/>
+<area shape="rect" href="map__loader_8cpp.html" title=" " alt="" coords="857,468,983,495"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="1465,319,1586,345"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="1891,319,1973,345"/>
+<area shape="rect" href="field__rviz__decorator_8h.html" title=" " alt="" coords="159,244,321,271"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="2275,319,2461,345"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1667,169,1832,196"/>
+<area shape="rect" href="field__rviz__decorator_8cpp.html" title=" " alt="" coords="93,319,272,345"/>
+<area shape="rect" href="wing__moveit__decorator_8cpp.html" title=" " alt="" coords="2248,393,2451,420"/>
+<area shape="rect" href="wing__rviz__decorator_8cpp.html" title=" " alt="" coords="2150,244,2330,271"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2abstract__robot__element_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot__element_8h__dep__incl.map b/doc/html/impl_2abstract__robot__element_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..ad0acfb4a4aab2b4aae449fe9f3916038324f8c9
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h__dep__incl.map
@@ -0,0 +1,33 @@
+<map id="abstract_robot_element.h" name="abstract_robot_element.h">
+<area shape="rect" id="node1" title=" " alt="" coords="1357,5,1547,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="1713,319,1866,345"/>
+<area shape="rect" id="node4" href="$base__routine_8cpp.html" title=" " alt="" coords="616,468,749,495"/>
+<area shape="rect" id="node7" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="1847,543,2015,569"/>
+<area shape="rect" id="node10" href="$cell__routine_8cpp.html" title=" " alt="" coords="1339,468,1464,495"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1363,169,1491,196"/>
+<area shape="rect" id="node20" href="$robot_8h.html" title=" " alt="" coords="1713,244,1781,271"/>
+<area shape="rect" id="node23" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1237,80,1414,121"/>
+<area shape="rect" id="node30" href="$impl_2field_8h.html" title=" " alt="" coords="209,169,271,196"/>
+<area shape="rect" id="node31" href="$wing_8h.html" title=" " alt="" coords="1717,87,1782,114"/>
+<area shape="rect" id="node3" href="$mediator_8h.html" title=" " alt="" coords="1565,393,1659,420"/>
+<area shape="rect" id="node6" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="2388,468,2577,495"/>
+<area shape="rect" id="node9" href="$moveit__mediator_8h.html" title=" " alt="" coords="1976,393,2123,420"/>
+<area shape="rect" id="node12" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="1733,393,1901,420"/>
+<area shape="rect" id="node5" href="$mediator_8cpp.html" title=" " alt="" coords="2154,468,2262,495"/>
+<area shape="rect" id="node8" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="2446,543,2650,569"/>
+<area shape="rect" id="node11" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="1969,468,2130,495"/>
+<area shape="rect" id="node14" href="$abstract__map__loader_8h.html" title=" " alt="" coords="749,244,920,271"/>
+<area shape="rect" id="node15" href="$abstract__strategy_8h.html" title=" " alt="" coords="448,319,595,345"/>
+<area shape="rect" id="node16" href="$base__by__rotation_8h.html" title=" " alt="" coords="499,393,645,420"/>
+<area shape="rect" id="node18" href="$map__loader_8h.html" title=" " alt="" coords="923,393,1034,420"/>
+<area shape="rect" id="node17" href="$base__by__rotation_8cpp.html" title=" " alt="" coords="430,468,591,495"/>
+<area shape="rect" id="node19" href="$map__loader_8cpp.html" title=" " alt="" coords="857,468,983,495"/>
+<area shape="rect" id="node21" href="$moveit__robot_8h.html" title=" " alt="" coords="1465,319,1586,345"/>
+<area shape="rect" id="node22" href="$robot_8cpp.html" title=" " alt="" coords="1891,319,1973,345"/>
+<area shape="rect" id="node24" href="$field__rviz__decorator_8h.html" title=" " alt="" coords="159,244,321,271"/>
+<area shape="rect" id="node26" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="2275,319,2461,345"/>
+<area shape="rect" id="node28" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1667,169,1832,196"/>
+<area shape="rect" id="node25" href="$field__rviz__decorator_8cpp.html" title=" " alt="" coords="93,319,272,345"/>
+<area shape="rect" id="node27" href="$wing__moveit__decorator_8cpp.html" title=" " alt="" coords="2248,393,2451,420"/>
+<area shape="rect" id="node29" href="$wing__rviz__decorator_8cpp.html" title=" " alt="" coords="2150,244,2330,271"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot__element_8h__dep__incl.md5 b/doc/html/impl_2abstract__robot__element_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..5f3febf34718c59b24664b294ea89d6c9703be28
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h__dep__incl.md5
@@ -0,0 +1 @@
+aeb0af4ac86d1182987ee9535ecdec0b
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot__element_8h__dep__incl.png b/doc/html/impl_2abstract__robot__element_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f90a0aa2c43a6d136334f79e017eda37d2aca6da
Binary files /dev/null and b/doc/html/impl_2abstract__robot__element_8h__dep__incl.png differ
diff --git a/doc/html/impl_2abstract__robot__element_8h__incl.map b/doc/html/impl_2abstract__robot__element_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..a8a9280f9ec68657d3ba57348b4d111e246b2d7d
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="abstract_robot_element.h" name="abstract_robot_element.h">
+<area shape="rect" id="node1" title=" " alt="" coords="113,5,302,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,87,84,114"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,87,307,114"/>
+<area shape="rect" id="node4" title=" " alt="" coords="331,80,478,121"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot__element_8h__incl.md5 b/doc/html/impl_2abstract__robot__element_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c0674ed725ebe71f761919d24a8a31dfa8be7da8
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h__incl.md5
@@ -0,0 +1 @@
+454d9178b0f1c513d6432ad4bb1e7f77
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot__element_8h__incl.png b/doc/html/impl_2abstract__robot__element_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..4c1554fadd318db7e68d986a926dbe999a0671c3
Binary files /dev/null and b/doc/html/impl_2abstract__robot__element_8h__incl.png differ
diff --git a/doc/html/impl_2abstract__robot__element_8h_source.html b/doc/html/impl_2abstract__robot__element_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b267c2c6ce5c6a30dfc5179217f26e47d3fd52bc
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element_8h_source.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_robot_element.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2abstract__robot__element_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_ELEMENT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_ELEMENT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;visualization_msgs/MarkerArray.h&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html">    9</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a> {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">   11</a></span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">   12</a></span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <a class="code" href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">   17</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf) { <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>= tf;}</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">   18</a></span>&#160;    <span class="keyword">inline</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>(){ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">   19</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform&amp; tf) {<a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>= tf * <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;}</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">   20</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform&amp; tf) { <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a> = tf;}</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">   21</a></span>&#160;    <span class="keyword">inline</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>;}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf2::Transform&amp; tf)= 0;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;};</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__element_html_aa7ee89ce290dd2e6408a9d2118af93f8"><div class="ttname"><a href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">Abstract_robot_element::set_world_tf</a></div><div class="ttdeci">void set_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00020">impl/abstract_robot_element.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a83f046bb2fb1009832091cf8502af956"><div class="ttname"><a href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element::relative_tf_</a></div><div class="ttdeci">tf2::Transform relative_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00011">impl/abstract_robot_element.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a2c9540782c6450c15aaa20c20b677a9a"><div class="ttname"><a href="classAbstract__robot__element.html#a2c9540782c6450c15aaa20c20b677a9a">Abstract_robot_element::Abstract_robot_element</a></div><div class="ttdeci">Abstract_robot_element()=default</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00019">impl/abstract_robot_element.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a12e6954b51765e18a7f0c2d8c4eca0c6"><div class="ttname"><a href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">Abstract_robot_element::set_relative_tf</a></div><div class="ttdeci">void set_relative_tf(tf2::Transform tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00017">impl/abstract_robot_element.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad3ee9aff6d4fb1e4e90775e943e65861"><div class="ttname"><a href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">Abstract_robot_element::relative_tf</a></div><div class="ttdeci">tf2::Transform &amp; relative_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00018">impl/abstract_robot_element.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_aecee1e1a5ca1f40473f325583b39dd9d"><div class="ttname"><a href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element::update</a></div><div class="ttdeci">virtual void update(tf2::Transform &amp;tf)=0</div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h.html b/doc/html/impl_2abstract__robot__element__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd06c0ef61d37ba6ab8120811950cbb5ee9caabc
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h.html
@@ -0,0 +1,89 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">impl/abstract_robot_element_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/abstract_robot_element_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot__element__decorator_8h__incl.png" border="0" usemap="#abstract__robot__element__decorator_8h" alt=""/></div>
+<map name="abstract__robot__element__decorator_8h" id="abstract__robot__element__decorator_8h">
+<area shape="rect" title=" " alt="" coords="37,5,215,47"/>
+<area shape="rect" title=" " alt="" coords="5,191,84,218"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,95,269,136"/>
+<area shape="rect" title=" " alt="" coords="108,191,307,218"/>
+<area shape="rect" title=" " alt="" coords="331,184,478,225"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2abstract__robot__element__decorator_8h__dep__incl.png" border="0" usemap="#abstract__robot__element__decorator_8hdep" alt=""/></div>
+<map name="abstract__robot__element__decorator_8hdep" id="abstract__robot__element__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="395,5,573,47"/>
+<area shape="rect" href="field__rviz__decorator_8h.html" title=" " alt="" coords="109,95,272,121"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="304,393,437,420"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="725,169,793,196"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="904,468,1072,495"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="1173,393,1299,420"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="1432,244,1619,271"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="401,95,567,121"/>
+<area shape="rect" href="field__rviz__decorator_8cpp.html" title=" " alt="" coords="43,169,221,196"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="682,244,835,271"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="499,319,592,345"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="960,393,1149,420"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="1163,319,1309,345"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="859,244,981,271"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="1005,244,1088,271"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="616,319,784,345"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="482,393,590,420"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1423,468,1627,495"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="1374,393,1535,420"/>
+<area shape="rect" href="wing__moveit__decorator_8cpp.html" title=" " alt="" coords="1499,319,1701,345"/>
+<area shape="rect" href="wing__rviz__decorator_8cpp.html" title=" " alt="" coords="449,169,629,196"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2abstract__robot__element__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.map b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..eba12bcacd90922cdcd1e3252eef8c09e35f005a
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.map
@@ -0,0 +1,23 @@
+<map id="abstract_robot_element_decorator.h" name="abstract_robot_element_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="395,5,573,47"/>
+<area shape="rect" id="node2" href="$field__rviz__decorator_8h.html" title=" " alt="" coords="109,95,272,121"/>
+<area shape="rect" id="node3" href="$base__routine_8cpp.html" title=" " alt="" coords="304,393,437,420"/>
+<area shape="rect" id="node5" href="$robot_8h.html" title=" " alt="" coords="725,169,793,196"/>
+<area shape="rect" id="node10" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="904,468,1072,495"/>
+<area shape="rect" id="node13" href="$cell__routine_8cpp.html" title=" " alt="" coords="1173,393,1299,420"/>
+<area shape="rect" id="node18" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="1432,244,1619,271"/>
+<area shape="rect" id="node20" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="401,95,567,121"/>
+<area shape="rect" id="node4" href="$field__rviz__decorator_8cpp.html" title=" " alt="" coords="43,169,221,196"/>
+<area shape="rect" id="node6" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="682,244,835,271"/>
+<area shape="rect" id="node7" href="$mediator_8h.html" title=" " alt="" coords="499,319,592,345"/>
+<area shape="rect" id="node9" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="960,393,1149,420"/>
+<area shape="rect" id="node12" href="$moveit__mediator_8h.html" title=" " alt="" coords="1163,319,1309,345"/>
+<area shape="rect" id="node16" href="$moveit__robot_8h.html" title=" " alt="" coords="859,244,981,271"/>
+<area shape="rect" id="node17" href="$robot_8cpp.html" title=" " alt="" coords="1005,244,1088,271"/>
+<area shape="rect" id="node15" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="616,319,784,345"/>
+<area shape="rect" id="node8" href="$mediator_8cpp.html" title=" " alt="" coords="482,393,590,420"/>
+<area shape="rect" id="node11" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="1423,468,1627,495"/>
+<area shape="rect" id="node14" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="1374,393,1535,420"/>
+<area shape="rect" id="node19" href="$wing__moveit__decorator_8cpp.html" title=" " alt="" coords="1499,319,1701,345"/>
+<area shape="rect" id="node21" href="$wing__rviz__decorator_8cpp.html" title=" " alt="" coords="449,169,629,196"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.md5 b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a52ef3f52545965f1c1b75fe12fedff241e74df6
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+521715c9b44ec2da937080c4da50c3af
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.png b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e9135216fe4d1d80e3a08e1c20e3db94e23e48b1
Binary files /dev/null and b/doc/html/impl_2abstract__robot__element__decorator_8h__dep__incl.png differ
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__incl.map b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..86997d9dcb665bac5e5cd9d3b98078e940eef6a8
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="abstract_robot_element_decorator.h" name="abstract_robot_element_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="37,5,215,47"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,191,84,218"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,95,269,136"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,191,307,218"/>
+<area shape="rect" id="node5" title=" " alt="" coords="331,184,478,225"/>
+</map>
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__incl.md5 b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..471a3c759dedcedd9c1458b7c1d98505a025195d
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.md5
@@ -0,0 +1 @@
+0e60eac0c6d6f49f2132600a15e910f2
\ No newline at end of file
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h__incl.png b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e397b4c2da7e16720196e4b04e7330b5792a8a3d
Binary files /dev/null and b/doc/html/impl_2abstract__robot__element__decorator_8h__incl.png differ
diff --git a/doc/html/impl_2abstract__robot__element__decorator_8h_source.html b/doc/html/impl_2abstract__robot__element__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2107b86e49ac7542cce7ce239b4eef8cd7592997
--- /dev/null
+++ b/doc/html/impl_2abstract__robot__element__decorator_8h_source.html
@@ -0,0 +1,71 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/abstract_robot_element_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2abstract__robot__element__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_ELEMENT_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_ELEMENT_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html">    7</a></span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">    9</a></span>&#160;    <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">   13</a></span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>) : <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>(<a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>){};</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">   15</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>() { <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>;}</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">   17</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf);}</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>(tf2::Transform&amp; tf)=0;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a>()=0;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;};</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a8042389be7d08be2d2792810078ac327"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator::output_filter</a></div><div class="ttdeci">virtual void output_filter()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae8e0dfe6a805942ddc5bd8d335b279a7"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae8e0dfe6a805942ddc5bd8d335b279a7">Abstract_robot_element_decorator::Abstract_robot_element_decorator</a></div><div class="ttdeci">Abstract_robot_element_decorator(Abstract_robot_element *next)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00013">impl/abstract_robot_element_decorator.h:13</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a9138c650f2148d515802a89f079ace2f"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator::wing</a></div><div class="ttdeci">Abstract_robot_element * wing()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">impl/abstract_robot_element_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">impl/abstract_robot_element_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_aecee1e1a5ca1f40473f325583b39dd9d"><div class="ttname"><a href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element::update</a></div><div class="ttdeci">virtual void update(tf2::Transform &amp;tf)=0</div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2field_8h.html b/doc/html/impl_2field_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..1b44bcd5b42beb8268e846a1f433f5e29259d345
--- /dev/null
+++ b/doc/html/impl_2field_8h.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">impl/field.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for impl/field.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2field_8h__incl.png" border="0" usemap="#field_8h" alt=""/></div>
+<map name="field_8h" id="field_8h">
+<area shape="rect" title=" " alt="" coords="95,5,157,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,80,269,121"/>
+<area shape="rect" title=" " alt="" coords="108,177,307,203"/>
+<area shape="rect" title=" " alt="" coords="331,169,478,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="impl_2field_8h__dep__incl.png" border="0" usemap="#field_8hdep" alt=""/></div>
+<map name="field_8hdep" id="field_8hdep">
+<area shape="rect" title=" " alt="" coords="241,5,303,32"/>
+<area shape="rect" href="field__rviz__decorator_8h.html" title=" " alt="" coords="72,80,235,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="248,304,381,331"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="471,80,539,107"/>
+<area shape="rect" href="field__rviz__decorator_8cpp.html" title=" " alt="" coords="5,155,184,181"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="623,155,777,181"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="400,229,493,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="544,304,733,331"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="912,229,1059,256"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="991,155,1113,181"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="360,155,443,181"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="867,379,1035,405"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="1084,304,1209,331"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="669,229,837,256"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="406,304,514,331"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="537,379,741,405"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="847,304,1009,331"/>
+</map>
+</div>
+</div>
+<p><a href="impl_2field_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html">Field</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/impl_2field_8h__dep__incl.map b/doc/html/impl_2field_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6088adcf6f130c67fc7bb1d323eef03b962beafb
--- /dev/null
+++ b/doc/html/impl_2field_8h__dep__incl.map
@@ -0,0 +1,19 @@
+<map id="field.h" name="field.h">
+<area shape="rect" id="node1" title=" " alt="" coords="241,5,303,32"/>
+<area shape="rect" id="node2" href="$field__rviz__decorator_8h.html" title=" " alt="" coords="72,80,235,107"/>
+<area shape="rect" id="node3" href="$base__routine_8cpp.html" title=" " alt="" coords="248,304,381,331"/>
+<area shape="rect" id="node5" href="$robot_8h.html" title=" " alt="" coords="471,80,539,107"/>
+<area shape="rect" id="node4" href="$field__rviz__decorator_8cpp.html" title=" " alt="" coords="5,155,184,181"/>
+<area shape="rect" id="node6" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="623,155,777,181"/>
+<area shape="rect" id="node7" href="$mediator_8h.html" title=" " alt="" coords="400,229,493,256"/>
+<area shape="rect" id="node9" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="544,304,733,331"/>
+<area shape="rect" id="node12" href="$moveit__mediator_8h.html" title=" " alt="" coords="912,229,1059,256"/>
+<area shape="rect" id="node16" href="$moveit__robot_8h.html" title=" " alt="" coords="991,155,1113,181"/>
+<area shape="rect" id="node17" href="$robot_8cpp.html" title=" " alt="" coords="360,155,443,181"/>
+<area shape="rect" id="node10" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="867,379,1035,405"/>
+<area shape="rect" id="node13" href="$cell__routine_8cpp.html" title=" " alt="" coords="1084,304,1209,331"/>
+<area shape="rect" id="node15" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="669,229,837,256"/>
+<area shape="rect" id="node8" href="$mediator_8cpp.html" title=" " alt="" coords="406,304,514,331"/>
+<area shape="rect" id="node11" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="537,379,741,405"/>
+<area shape="rect" id="node14" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="847,304,1009,331"/>
+</map>
diff --git a/doc/html/impl_2field_8h__dep__incl.md5 b/doc/html/impl_2field_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d9f565d79bc3a7948c5f7e54d22765a499def389
--- /dev/null
+++ b/doc/html/impl_2field_8h__dep__incl.md5
@@ -0,0 +1 @@
+72bc967e7467cd2de5efe92844c540ee
\ No newline at end of file
diff --git a/doc/html/impl_2field_8h__dep__incl.png b/doc/html/impl_2field_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e139f8b77485b2546fde9d63c1bdc1c2b83ca7c4
Binary files /dev/null and b/doc/html/impl_2field_8h__dep__incl.png differ
diff --git a/doc/html/impl_2field_8h__incl.map b/doc/html/impl_2field_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..822ad1b03118ed85d873b72a6010260c91174ce5
--- /dev/null
+++ b/doc/html/impl_2field_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="field.h" name="field.h">
+<area shape="rect" id="node1" title=" " alt="" coords="95,5,157,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,80,269,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,177,307,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="331,169,478,211"/>
+</map>
diff --git a/doc/html/impl_2field_8h__incl.md5 b/doc/html/impl_2field_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..da51b8be2bd3afc8e200807d0abec1efc37e1c80
--- /dev/null
+++ b/doc/html/impl_2field_8h__incl.md5
@@ -0,0 +1 @@
+e7be2843db64898b0a96d1e828aba707
\ No newline at end of file
diff --git a/doc/html/impl_2field_8h__incl.png b/doc/html/impl_2field_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..81c994f20f88bc050a6cf44dc1f4b39bde0ed285
Binary files /dev/null and b/doc/html/impl_2field_8h__incl.png differ
diff --git a/doc/html/impl_2field_8h_source.html b/doc/html/impl_2field_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f58acf65eb05c82787017e6963a9cb25073e6d4
--- /dev/null
+++ b/doc/html/impl_2field_8h_source.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">impl/field.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="impl_2field_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef Field_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define Field_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno"><a class="line" href="classField.html">    7</a></span>&#160;<span class="keyword">class </span><a class="code" href="classField.html">Field</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classField.html#a3937b0953056acede15814ada1053f9a">    9</a></span>&#160;    <a class="code" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>(tf2::Transform tf){ <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a> = tf;}</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    </div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">   11</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{this-&gt;<a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf);}</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;};</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a83f046bb2fb1009832091cf8502af956"><div class="ttname"><a href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element::relative_tf_</a></div><div class="ttdeci">tf2::Transform relative_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00011">impl/abstract_robot_element.h:11</a></div></div>
+<div class="ttc" id="aclassField_html_a3937b0953056acede15814ada1053f9a"><div class="ttname"><a href="classField.html#a3937b0953056acede15814ada1053f9a">Field::Field</a></div><div class="ttdeci">Field(tf2::Transform tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00009">impl/field.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00019">impl/abstract_robot_element.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassField_html"><div class="ttname"><a href="classField.html">Field</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00007">impl/field.h:7</a></div></div>
+<div class="ttc" id="aclassField_html_a5e927f0256af43c7f9bc45177adb6da0"><div class="ttname"><a href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00011">impl/field.h:11</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/index-msg.html b/doc/html/index-msg.html
new file mode 100644
index 0000000000000000000000000000000000000000..82c7f3704ed7b9b75a9f5728e8fdea33e1a786b2
--- /dev/null
+++ b/doc/html/index-msg.html
@@ -0,0 +1,33 @@
+<html>
+<head>
+<title>multi_cell_builder Msg/Srv Documentation</title>
+<link type="text/css" rel="stylesheet" href="msg-styles.css" />
+</head>
+<body>
+
+<div id="container">
+
+<h1>multi_cell_builder Msg/Srv Documentation</h1>
+
+<div class="see-also">
+See also: 
+
+<ul>
+  <li><a href="None">Website</a></li>
+
+  <li><a href="index.html">Code API Documentation</a></li>
+</ul>
+
+</div>
+
+
+
+
+
+
+<p class="footer"><small><em>autogenerated on Thu, 12 Jan 2023 23:45:45</em></small></p>
+
+</div>
+
+</body>
+</html>
diff --git a/doc/html/index.html b/doc/html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..6cab72c40e1418785754be0d2819a8a0d7da19fa
--- /dev/null
+++ b/doc/html/index.html
@@ -0,0 +1,33 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">multi_cell_builder Documentation</div>  </div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/inherit_graph_0.map b/doc/html/inherit_graph_0.map
new file mode 100644
index 0000000000000000000000000000000000000000..61f0bbb43fbb897c7580a36563cd674a7ba8b176
--- /dev/null
+++ b/doc/html/inherit_graph_0.map
@@ -0,0 +1,4 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__base.html" title="Abstract base class." alt="" coords="5,5,120,32"/>
+<area shape="rect" id="node2" href="$classSimple__base.html" title="refiend base abstraction" alt="" coords="168,5,273,32"/>
+</map>
diff --git a/doc/html/inherit_graph_0.md5 b/doc/html/inherit_graph_0.md5
new file mode 100644
index 0000000000000000000000000000000000000000..2ce1348d45a9f965fde135ee37cd01dcd32e0934
--- /dev/null
+++ b/doc/html/inherit_graph_0.md5
@@ -0,0 +1 @@
+59d7977ee206bc1256f5fd0b5563540c
\ No newline at end of file
diff --git a/doc/html/inherit_graph_0.png b/doc/html/inherit_graph_0.png
new file mode 100644
index 0000000000000000000000000000000000000000..2b640cfdf6db9ce7bd737811ed5c46ddbf8a361d
Binary files /dev/null and b/doc/html/inherit_graph_0.png differ
diff --git a/doc/html/inherit_graph_1.map b/doc/html/inherit_graph_1.map
new file mode 100644
index 0000000000000000000000000000000000000000..77fd4a07b3c802184a84bf5fc5a49767dc9e5a93
--- /dev/null
+++ b/doc/html/inherit_graph_1.map
@@ -0,0 +1,4 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__base__implementation.html" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+<area shape="rect" id="node2" href="$classSimple__base__implementation.html" title="refined base implementation" alt="" coords="279,5,495,32"/>
+</map>
diff --git a/doc/html/inherit_graph_1.md5 b/doc/html/inherit_graph_1.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0e0acfef2b337831cded33a7d354081ffdc1b9d6
--- /dev/null
+++ b/doc/html/inherit_graph_1.md5
@@ -0,0 +1 @@
+d41df0c88208547004198d249be20d37
\ No newline at end of file
diff --git a/doc/html/inherit_graph_1.png b/doc/html/inherit_graph_1.png
new file mode 100644
index 0000000000000000000000000000000000000000..38f2962ea43cb96913a90b3fb91ce4abfeb4d02e
Binary files /dev/null and b/doc/html/inherit_graph_1.png differ
diff --git a/doc/html/inherit_graph_10.map b/doc/html/inherit_graph_10.map
new file mode 100644
index 0000000000000000000000000000000000000000..5efc440a129b5e1c6e97c1aa7385441fdfe4d34e
--- /dev/null
+++ b/doc/html/inherit_graph_10.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$structobject__data.html" title=" " alt="" coords="5,5,104,32"/>
+</map>
diff --git a/doc/html/inherit_graph_10.md5 b/doc/html/inherit_graph_10.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b870c9a91af35bb5e8ea7bf46cb341eff4b59878
--- /dev/null
+++ b/doc/html/inherit_graph_10.md5
@@ -0,0 +1 @@
+fde0e7448fe8dd735a8945dffeb272b8
\ No newline at end of file
diff --git a/doc/html/inherit_graph_10.png b/doc/html/inherit_graph_10.png
new file mode 100644
index 0000000000000000000000000000000000000000..7f8dcc5e0257740c9f049fbc369895728c64f045
Binary files /dev/null and b/doc/html/inherit_graph_10.png differ
diff --git a/doc/html/inherit_graph_11.map b/doc/html/inherit_graph_11.map
new file mode 100644
index 0000000000000000000000000000000000000000..7709f6fcf74469bbf28d830cb32ed47178f862cd
--- /dev/null
+++ b/doc/html/inherit_graph_11.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$structwing__BP.html" title=" " alt="" coords="5,5,83,32"/>
+</map>
diff --git a/doc/html/inherit_graph_11.md5 b/doc/html/inherit_graph_11.md5
new file mode 100644
index 0000000000000000000000000000000000000000..547106cc0fdcae8b75603d3db5aeecbf17cd2bac
--- /dev/null
+++ b/doc/html/inherit_graph_11.md5
@@ -0,0 +1 @@
+c1fd17299837539a55141febd50c22e4
\ No newline at end of file
diff --git a/doc/html/inherit_graph_11.png b/doc/html/inherit_graph_11.png
new file mode 100644
index 0000000000000000000000000000000000000000..c2d11e4a7a6bd37b126fc125ae2d1359802e7fbe
Binary files /dev/null and b/doc/html/inherit_graph_11.png differ
diff --git a/doc/html/inherit_graph_2.map b/doc/html/inherit_graph_2.map
new file mode 100644
index 0000000000000000000000000000000000000000..5f11e654e94ebbd79fd89deedc84833c76b3f35b
--- /dev/null
+++ b/doc/html/inherit_graph_2.map
@@ -0,0 +1,4 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__map__loader.html" title=" " alt="" coords="5,5,165,32"/>
+<area shape="rect" id="node2" href="$classMap__loader.html" title=" " alt="" coords="213,5,312,32"/>
+</map>
diff --git a/doc/html/inherit_graph_2.md5 b/doc/html/inherit_graph_2.md5
new file mode 100644
index 0000000000000000000000000000000000000000..edbbe5a0a7dc23dcca15a1c4fe6420c01da0cea6
--- /dev/null
+++ b/doc/html/inherit_graph_2.md5
@@ -0,0 +1 @@
+48f14b6e73ea1fbd33cc789890cdd7a1
\ No newline at end of file
diff --git a/doc/html/inherit_graph_2.png b/doc/html/inherit_graph_2.png
new file mode 100644
index 0000000000000000000000000000000000000000..7b617614709ff9412d7c2a2cc245c856386a5abb
Binary files /dev/null and b/doc/html/inherit_graph_2.png differ
diff --git a/doc/html/inherit_graph_3.map b/doc/html/inherit_graph_3.map
new file mode 100644
index 0000000000000000000000000000000000000000..6ea8a47f035167869c456e5ef3d0d237a0a7ced0
--- /dev/null
+++ b/doc/html/inherit_graph_3.map
@@ -0,0 +1,7 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__mediator.html" title="Abstract mediator." alt="" coords="5,56,148,83"/>
+<area shape="rect" id="node2" href="$classBase__calculation__mediator.html" title="Concrete Mediator." alt="" coords="196,5,395,32"/>
+<area shape="rect" id="node3" href="$classMediator.html" title=" " alt="" coords="255,56,335,83"/>
+<area shape="rect" id="node4" href="$classMoveit__mediator.html" title=" " alt="" coords="229,107,362,133"/>
+<area shape="rect" id="node5" href="$classMoveit__grasp__mediator.html" title=" " alt="" coords="443,107,619,133"/>
+</map>
diff --git a/doc/html/inherit_graph_3.md5 b/doc/html/inherit_graph_3.md5
new file mode 100644
index 0000000000000000000000000000000000000000..2e59ab411b4a441f296f6c37ae431d7a0b45ab10
--- /dev/null
+++ b/doc/html/inherit_graph_3.md5
@@ -0,0 +1 @@
+894e14609d5f447a668771ad97516f8b
\ No newline at end of file
diff --git a/doc/html/inherit_graph_3.png b/doc/html/inherit_graph_3.png
new file mode 100644
index 0000000000000000000000000000000000000000..02a611e910e8db093e347e6f0bb505d13c6ce7ae
Binary files /dev/null and b/doc/html/inherit_graph_3.png differ
diff --git a/doc/html/inherit_graph_4.map b/doc/html/inherit_graph_4.map
new file mode 100644
index 0000000000000000000000000000000000000000..16b17762d9571a1d7ef56040a36a49b2c0b36780
--- /dev/null
+++ b/doc/html/inherit_graph_4.map
@@ -0,0 +1,10 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,157,180,184"/>
+<area shape="rect" id="node2" href="$classCuboid__reader.html" title="Cuboid reader." alt="" coords="243,5,359,32"/>
+<area shape="rect" id="node3" href="$classJob__reader.html" title="Job reader." alt="" coords="255,56,346,83"/>
+<area shape="rect" id="node4" href="$classMap__reader.html" title="Map reader." alt="" coords="251,107,350,133"/>
+<area shape="rect" id="node5" href="$classRobot__reader.html" title="Robot reader." alt="" coords="246,157,355,184"/>
+<area shape="rect" id="node6" href="$classTask__space__reader.html" title="Task space reader." alt="" coords="228,208,373,235"/>
+<area shape="rect" id="node7" href="$classTs__reader.html" title="TS reader." alt="" coords="259,259,343,285"/>
+<area shape="rect" id="node8" href="$classWing__reader.html" title="Wing reader." alt="" coords="249,309,353,336"/>
+</map>
diff --git a/doc/html/inherit_graph_4.md5 b/doc/html/inherit_graph_4.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d1fa8f74fcb7ca3ccfb8efdf5032b6394c3a27ff
--- /dev/null
+++ b/doc/html/inherit_graph_4.md5
@@ -0,0 +1 @@
+8000e753ab3fbee83b69b6f252070ab5
\ No newline at end of file
diff --git a/doc/html/inherit_graph_4.png b/doc/html/inherit_graph_4.png
new file mode 100644
index 0000000000000000000000000000000000000000..812a19e0bb925ca794c844032f4d8b0bbce2c67e
Binary files /dev/null and b/doc/html/inherit_graph_4.png differ
diff --git a/doc/html/inherit_graph_5.map b/doc/html/inherit_graph_5.map
new file mode 100644
index 0000000000000000000000000000000000000000..c92621626bd73891e99951216680d3552bf3828f
--- /dev/null
+++ b/doc/html/inherit_graph_5.map
@@ -0,0 +1,8 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__robot.html" title=" " alt="" coords="5,56,123,83"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__decorator.html" title=" " alt="" coords="171,5,357,32"/>
+<area shape="rect" id="node4" href="$classCeti__robot.html" title="Concrete Ceti&#45;Robot." alt="" coords="219,56,309,83"/>
+<area shape="rect" id="node5" href="$classRobot.html" title=" " alt="" coords="234,107,294,133"/>
+<area shape="rect" id="node3" href="$classPanda__decorator.html" title=" " alt="" coords="405,5,536,32"/>
+<area shape="rect" id="node6" href="$classMoveit__robot.html" title=" " alt="" coords="417,107,525,133"/>
+</map>
diff --git a/doc/html/inherit_graph_5.md5 b/doc/html/inherit_graph_5.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0a681f28861b37af9e2aaa58cb96536eac6afbd0
--- /dev/null
+++ b/doc/html/inherit_graph_5.md5
@@ -0,0 +1 @@
+edda90c8c1029bb507cc827db4894466
\ No newline at end of file
diff --git a/doc/html/inherit_graph_5.png b/doc/html/inherit_graph_5.png
new file mode 100644
index 0000000000000000000000000000000000000000..5adf11b3e423e8ee3b49c2f075ab7f363fddfcb2
Binary files /dev/null and b/doc/html/inherit_graph_5.png differ
diff --git a/doc/html/inherit_graph_6.map b/doc/html/inherit_graph_6.map
new file mode 100644
index 0000000000000000000000000000000000000000..af03b7e05d0164b401450df238919e650c250b31
--- /dev/null
+++ b/doc/html/inherit_graph_6.map
@@ -0,0 +1,13 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__robot__element.html" title=" " alt="" coords="5,189,184,216"/>
+<area shape="rect" id="node2" href="$classAbstract__robot__element__decorator.html" title=" " alt="" coords="232,98,411,139"/>
+<area shape="rect" id="node7" href="$classField.html" title=" " alt="" coords="295,164,347,191"/>
+<area shape="rect" id="node8" href="$classPanel.html" title=" " alt="" coords="292,215,351,241"/>
+<area shape="rect" id="node11" href="$classWing.html" title=" " alt="" coords="294,265,349,292"/>
+<area shape="rect" id="node3" href="$classField__rviz__decorator.html" title=" " alt="" coords="471,5,623,32"/>
+<area shape="rect" id="node4" href="$classLog__decorator.html" title=" " alt="" coords="490,56,605,83"/>
+<area shape="rect" id="node5" href="$classWing__moveit__decorator.html" title=" " alt="" coords="459,107,636,133"/>
+<area shape="rect" id="node6" href="$classWing__rviz__decorator.html" title=" " alt="" coords="470,157,625,184"/>
+<area shape="rect" id="node9" href="$classMoveit__panel.html" title=" " alt="" coords="492,212,603,239"/>
+<area shape="rect" id="node10" href="$classRviz__panel.html" title=" " alt="" coords="501,263,594,289"/>
+</map>
diff --git a/doc/html/inherit_graph_6.md5 b/doc/html/inherit_graph_6.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f2d58f9a2a23be46ae158b5bef0eaf3bcfd2eea2
--- /dev/null
+++ b/doc/html/inherit_graph_6.md5
@@ -0,0 +1 @@
+590c210cab42b5594a59f44cc2f03bf9
\ No newline at end of file
diff --git a/doc/html/inherit_graph_6.png b/doc/html/inherit_graph_6.png
new file mode 100644
index 0000000000000000000000000000000000000000..b8eb27f191ea19d86b09dcdbcebcc26c6e26b3f6
Binary files /dev/null and b/doc/html/inherit_graph_6.png differ
diff --git a/doc/html/inherit_graph_7.map b/doc/html/inherit_graph_7.map
new file mode 100644
index 0000000000000000000000000000000000000000..eb2390ff7f2444dff6927da5cab773f3dbf60bcc
--- /dev/null
+++ b/doc/html/inherit_graph_7.map
@@ -0,0 +1,4 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classAbstract__strategy.html" title=" " alt="" coords="5,5,143,32"/>
+<area shape="rect" id="node2" href="$classBase__by__rotation.html" title=" " alt="" coords="191,5,325,32"/>
+</map>
diff --git a/doc/html/inherit_graph_7.md5 b/doc/html/inherit_graph_7.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0c40880bf7e9bd7550ea45400a7b73f6efeadbde
--- /dev/null
+++ b/doc/html/inherit_graph_7.md5
@@ -0,0 +1 @@
+0c39d6739eaf8906d2016319fd491d1d
\ No newline at end of file
diff --git a/doc/html/inherit_graph_7.png b/doc/html/inherit_graph_7.png
new file mode 100644
index 0000000000000000000000000000000000000000..56f24a9b2ff344541ffec42d8eb35077140dbfd9
Binary files /dev/null and b/doc/html/inherit_graph_7.png differ
diff --git a/doc/html/inherit_graph_8.map b/doc/html/inherit_graph_8.map
new file mode 100644
index 0000000000000000000000000000000000000000..585d4847dab7e40f65fd756923789b0531d0b364
--- /dev/null
+++ b/doc/html/inherit_graph_8.map
@@ -0,0 +1,4 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" title=" " alt="" coords="5,5,132,32"/>
+<area shape="rect" id="node2" href="$classCollision__helper.html" title=" " alt="" coords="180,5,307,32"/>
+</map>
diff --git a/doc/html/inherit_graph_8.md5 b/doc/html/inherit_graph_8.md5
new file mode 100644
index 0000000000000000000000000000000000000000..af25093c07688e6ec1ea9735caac9861e9cbac1f
--- /dev/null
+++ b/doc/html/inherit_graph_8.md5
@@ -0,0 +1 @@
+8549f08fbc62355f751f75097ff47c9c
\ No newline at end of file
diff --git a/doc/html/inherit_graph_8.png b/doc/html/inherit_graph_8.png
new file mode 100644
index 0000000000000000000000000000000000000000..b778f655ab34ad5d328cf9314af29007bedd93f3
Binary files /dev/null and b/doc/html/inherit_graph_8.png differ
diff --git a/doc/html/inherit_graph_9.map b/doc/html/inherit_graph_9.map
new file mode 100644
index 0000000000000000000000000000000000000000..15ed0bc93d0ee7624ea0e76ac3fa224d84e4c228
--- /dev/null
+++ b/doc/html/inherit_graph_9.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$structjob__data.html" title=" " alt="" coords="5,5,84,32"/>
+</map>
diff --git a/doc/html/inherit_graph_9.md5 b/doc/html/inherit_graph_9.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c96d7cf894f242e18f1ff1f364d3f62b3471e729
--- /dev/null
+++ b/doc/html/inherit_graph_9.md5
@@ -0,0 +1 @@
+d998bb4189467a0aef6bd4282e404d2c
\ No newline at end of file
diff --git a/doc/html/inherit_graph_9.png b/doc/html/inherit_graph_9.png
new file mode 100644
index 0000000000000000000000000000000000000000..dcf1f9109514af6fa811d2d42acd938f6fc3ac40
Binary files /dev/null and b/doc/html/inherit_graph_9.png differ
diff --git a/doc/html/inherits.html b/doc/html/inherits.html
new file mode 100644
index 0000000000000000000000000000000000000000..d8257f6dceea56fa679ff8ba6de37b279e7196b5
--- /dev/null
+++ b/doc/html/inherits.html
@@ -0,0 +1,128 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Class Hierarchy</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Class Hierarchy</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">
+<p><a href="hierarchy.html">Go to the textual class hierarchy</a></p>
+</div><table border="0" cellspacing="10" cellpadding="0">
+<tr><td><img src="inherit_graph_0.png" border="0" usemap="#Abstract__base" alt=""/>
+<map name="Abstract__base" id="Abstract__base">
+<area shape="rect" href="classAbstract__base.html" title="Abstract base class." alt="" coords="5,5,120,32"/>
+<area shape="rect" href="classSimple__base.html" title="refiend base abstraction" alt="" coords="168,5,273,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_1.png" border="0" usemap="#Abstract__base__implementation" alt=""/>
+<map name="Abstract__base__implementation" id="Abstract__base__implementation">
+<area shape="rect" href="classAbstract__base__implementation.html" title="abstract base implementation" alt="" coords="5,5,231,32"/>
+<area shape="rect" href="classSimple__base__implementation.html" title="refined base implementation" alt="" coords="279,5,495,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_2.png" border="0" usemap="#Abstract__map__loader" alt=""/>
+<map name="Abstract__map__loader" id="Abstract__map__loader">
+<area shape="rect" href="classAbstract__map__loader.html" title=" " alt="" coords="5,5,165,32"/>
+<area shape="rect" href="classMap__loader.html" title=" " alt="" coords="213,5,312,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_3.png" border="0" usemap="#Abstract__mediator" alt=""/>
+<map name="Abstract__mediator" id="Abstract__mediator">
+<area shape="rect" href="classAbstract__mediator.html" title="Abstract mediator." alt="" coords="5,56,148,83"/>
+<area shape="rect" href="classBase__calculation__mediator.html" title="Concrete Mediator." alt="" coords="196,5,395,32"/>
+<area shape="rect" href="classMediator.html" title=" " alt="" coords="255,56,335,83"/>
+<area shape="rect" href="classMoveit__mediator.html" title=" " alt="" coords="229,107,362,133"/>
+<area shape="rect" href="classMoveit__grasp__mediator.html" title=" " alt="" coords="443,107,619,133"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_4.png" border="0" usemap="#Abstract__param__reader" alt=""/>
+<map name="Abstract__param__reader" id="Abstract__param__reader">
+<area shape="rect" href="classAbstract__param__reader.html" title="Abstract ROS&#45;Param reader class." alt="" coords="5,157,180,184"/>
+<area shape="rect" href="classCuboid__reader.html" title="Cuboid reader." alt="" coords="243,5,359,32"/>
+<area shape="rect" href="classJob__reader.html" title="Job reader." alt="" coords="255,56,346,83"/>
+<area shape="rect" href="classMap__reader.html" title="Map reader." alt="" coords="251,107,350,133"/>
+<area shape="rect" href="classRobot__reader.html" title="Robot reader." alt="" coords="246,157,355,184"/>
+<area shape="rect" href="classTask__space__reader.html" title="Task space reader." alt="" coords="228,208,373,235"/>
+<area shape="rect" href="classTs__reader.html" title="TS reader." alt="" coords="259,259,343,285"/>
+<area shape="rect" href="classWing__reader.html" title="Wing reader." alt="" coords="249,309,353,336"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_5.png" border="0" usemap="#Abstract__robot" alt=""/>
+<map name="Abstract__robot" id="Abstract__robot">
+<area shape="rect" href="classAbstract__robot.html" title=" " alt="" coords="5,56,123,83"/>
+<area shape="rect" href="classAbstract__robot__decorator.html" title=" " alt="" coords="171,5,357,32"/>
+<area shape="rect" href="classCeti__robot.html" title="Concrete Ceti&#45;Robot." alt="" coords="219,56,309,83"/>
+<area shape="rect" href="classRobot.html" title=" " alt="" coords="234,107,294,133"/>
+<area shape="rect" href="classPanda__decorator.html" title=" " alt="" coords="405,5,536,32"/>
+<area shape="rect" href="classMoveit__robot.html" title=" " alt="" coords="417,107,525,133"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_6.png" border="0" usemap="#Abstract__robot__element" alt=""/>
+<map name="Abstract__robot__element" id="Abstract__robot__element">
+<area shape="rect" href="classAbstract__robot__element.html" title=" " alt="" coords="5,189,184,216"/>
+<area shape="rect" href="classAbstract__robot__element__decorator.html" title=" " alt="" coords="232,98,411,139"/>
+<area shape="rect" href="classField.html" title=" " alt="" coords="295,164,347,191"/>
+<area shape="rect" href="classPanel.html" title=" " alt="" coords="292,215,351,241"/>
+<area shape="rect" href="classWing.html" title=" " alt="" coords="294,265,349,292"/>
+<area shape="rect" href="classField__rviz__decorator.html" title=" " alt="" coords="471,5,623,32"/>
+<area shape="rect" href="classLog__decorator.html" title=" " alt="" coords="490,56,605,83"/>
+<area shape="rect" href="classWing__moveit__decorator.html" title=" " alt="" coords="459,107,636,133"/>
+<area shape="rect" href="classWing__rviz__decorator.html" title=" " alt="" coords="470,157,625,184"/>
+<area shape="rect" href="classMoveit__panel.html" title=" " alt="" coords="492,212,603,239"/>
+<area shape="rect" href="classRviz__panel.html" title=" " alt="" coords="501,263,594,289"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_7.png" border="0" usemap="#Abstract__strategy" alt=""/>
+<map name="Abstract__strategy" id="Abstract__strategy">
+<area shape="rect" href="classAbstract__strategy.html" title=" " alt="" coords="5,5,143,32"/>
+<area shape="rect" href="classBase__by__rotation.html" title=" " alt="" coords="191,5,325,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_8.png" border="0" usemap="#Collision__helper" alt=""/>
+<map name="Collision__helper" id="Collision__helper">
+<area shape="rect" title=" " alt="" coords="5,5,132,32"/>
+<area shape="rect" href="classCollision__helper.html" title=" " alt="" coords="180,5,307,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_9.png" border="0" usemap="#job__data" alt=""/>
+<map name="job__data" id="job__data">
+<area shape="rect" href="structjob__data.html" title=" " alt="" coords="5,5,84,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_10.png" border="0" usemap="#object__data" alt=""/>
+<map name="object__data" id="object__data">
+<area shape="rect" href="structobject__data.html" title=" " alt="" coords="5,5,104,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_11.png" border="0" usemap="#wing__BP" alt=""/>
+<map name="wing__BP" id="wing__BP">
+<area shape="rect" href="structwing__BP.html" title=" " alt="" coords="5,5,83,32"/>
+</map>
+</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/job__reader_8cpp.html b/doc/html/job__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..5279fa9d4da6e5a96a609426c9c2c8995365b18a
--- /dev/null
+++ b/doc/html/job__reader_8cpp.html
@@ -0,0 +1,62 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: job_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">job_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="job__reader_8h_source.html">reader/job_reader.h</a>&quot;</code><br />
+<code>#include &lt;queue&gt;</code><br />
+<code>#include &quot;boost/circular_buffer.hpp&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for job_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="job__reader_8cpp__incl.png" border="0" usemap="#job__reader_8cpp" alt=""/></div>
+<map name="job__reader_8cpp" id="job__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="1031,5,1150,32"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="883,80,1032,107"/>
+<area shape="rect" title=" " alt="" coords="1020,162,1204,189"/>
+<area shape="rect" title=" " alt="" coords="1129,80,1191,107"/>
+<area shape="rect" title=" " alt="" coords="923,251,1002,278"/>
+<area shape="rect" title=" " alt="" coords="1026,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="5,251,155,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="693,155,864,196"/>
+<area shape="rect" title=" " alt="" coords="363,251,562,278"/>
+<area shape="rect" title=" " alt="" coords="586,251,718,278"/>
+<area shape="rect" title=" " alt="" coords="742,251,815,278"/>
+<area shape="rect" title=" " alt="" coords="840,251,899,278"/>
+<area shape="rect" title=" " alt="" coords="179,244,339,285"/>
+</map>
+</div>
+</div>
+<p><a href="job__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/job__reader_8cpp__incl.map b/doc/html/job__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6807834a1286bdc0d34666a03fd1fd3f971dad0f
--- /dev/null
+++ b/doc/html/job__reader_8cpp__incl.map
@@ -0,0 +1,15 @@
+<map id="job_reader.cpp" name="job_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="1031,5,1150,32"/>
+<area shape="rect" id="node2" href="$job__reader_8h.html" title=" " alt="" coords="883,80,1032,107"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1020,162,1204,189"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1129,80,1191,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="923,251,1002,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1026,251,1139,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="5,251,155,278"/>
+<area shape="rect" id="node7" href="$abstract__param__reader_8h.html" title=" " alt="" coords="693,155,864,196"/>
+<area shape="rect" id="node8" title=" " alt="" coords="363,251,562,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="586,251,718,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="742,251,815,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="840,251,899,278"/>
+<area shape="rect" id="node12" title=" " alt="" coords="179,244,339,285"/>
+</map>
diff --git a/doc/html/job__reader_8cpp__incl.md5 b/doc/html/job__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a103270047ee7abe36bf61d39fc50606e4dbbc6e
--- /dev/null
+++ b/doc/html/job__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+a419c772aaa1e0d52456fbca77f1f487
\ No newline at end of file
diff --git a/doc/html/job__reader_8cpp__incl.png b/doc/html/job__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..4fe783713bb5012645ec3603024a823a16a1cb9e
Binary files /dev/null and b/doc/html/job__reader_8cpp__incl.png differ
diff --git a/doc/html/job__reader_8cpp_source.html b/doc/html/job__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd89150935c6cc5ea532072d1876f7b0b6fbd324
--- /dev/null
+++ b/doc/html/job__reader_8cpp_source.html
@@ -0,0 +1,100 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: job_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">job_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="job__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="job__reader_8h.html">reader/job_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;queue&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;boost/circular_buffer.hpp&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno"><a class="line" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">    5</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader::read</a>(){</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- JOB_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/tasks/groups&quot;</span>, resources);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keywordtype">int</span> count =0;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        count+= resources[i][<span class="stringliteral">&quot;jobs&quot;</span>].size();</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    }</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    boost::circular_buffer&lt;std::pair&lt;std::string, job_data&gt;&gt; cb_jd(count);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        std::string robot = resources[i][<span class="stringliteral">&quot;name&quot;</span>];</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="comment">//nh_-&gt;getParam(&quot;/tasks/groups/&quot; + robot, jobs);</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; resources[i][<span class="stringliteral">&quot;jobs&quot;</span>].size(); j++){</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;--- %s --- JOB_%i ---&quot;</span>, robot.c_str(), j);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;            <a class="code" href="structjob__data.html">job_data</a> jd;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;            <span class="keywordflow">for</span>(<span class="keywordtype">int</span> k = 0; k &lt; resources[i][<span class="stringliteral">&quot;jobs&quot;</span>][j].size(); k++){</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                XmlRpc::XmlRpcValue <a class="code" href="structjob__data.html">job_data</a> = resources[i][<span class="stringliteral">&quot;jobs&quot;</span>][j][k];</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                tf2::Vector3 pos;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                tf2::Quaternion rot;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                (<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(<a class="code" href="structjob__data.html">job_data</a>[<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;=&gt; Grab: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;=&gt; Grab: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;                jd.<a class="code" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">jobs_</a>.push_back(tf2::Transform(rot, pos));</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;            }</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;            cb_jd.push_back(std::pair&lt;std::string, job_data&gt;(robot, jd));</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        }  </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    }</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">set_job_data</a>(cb_jd);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="comment">// validate </span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; s_jd : <a class="code" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a>){</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; pose : s_jd.second.jobs_) {</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;%s %f %f %f %f %f %f %f&quot;</span>, s_jd.first.c_str(), pose.getOrigin().getX(), pose.getOrigin().getY(), pose.getOrigin().getZ(), pose.getRotation().getX(), pose.getRotation().getY(), pose.getRotation().getZ(), pose.getRotation().getW());</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        }</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="ajob__reader_8h_html"><div class="ttname"><a href="job__reader_8h.html">job_reader.h</a></div></div>
+<div class="ttc" id="astructjob__data_html_a9995696b3e7a24afb51e67a3cc8616d0"><div class="ttname"><a href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">job_data::jobs_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; jobs_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00020">abstract_param_reader.h:20</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_ae7af6b2d3734d71bc2d15131733e9c1a"><div class="ttname"><a href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">Job_reader::job_data_</a></div><div class="ttdeci">boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt; &gt; job_data_</div><div class="ttdoc">FIFO job information.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00018">job_reader.h:18</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_a828c979dea61dfcf8214c30d11645b07"><div class="ttname"><a href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementation</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8cpp_source.html#l00005">job_reader.cpp:5</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_a0602b23e66eeea128251f411b0935f81"><div class="ttname"><a href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">Job_reader::set_job_data</a></div><div class="ttdeci">void set_job_data(boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt;&gt; &amp;robot_data)</div><div class="ttdoc">Set Job_data.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00035">job_reader.h:35</a></div></div>
+<div class="ttc" id="astructjob__data_html"><div class="ttname"><a href="structjob__data.html">job_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00019">abstract_param_reader.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/job__reader_8h.html b/doc/html/job__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b33420e5de9df47a2ab08177e7d5da5925eef54
--- /dev/null
+++ b/doc/html/job__reader_8h.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: job_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">job_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;boost/circular_buffer.hpp&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for job_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="job__reader_8h__incl.png" border="0" usemap="#job__reader_8h" alt=""/></div>
+<map name="job__reader_8h" id="job__reader_8h">
+<area shape="rect" title=" " alt="" coords="269,5,372,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" title=" " alt="" coords="581,87,765,114"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="386,80,557,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="job__reader_8h__dep__incl.png" border="0" usemap="#job__reader_8hdep" alt=""/></div>
+<map name="job__reader_8hdep" id="job__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="352,5,455,32"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="91,155,281,181"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="245,80,391,107"/>
+<area shape="rect" href="mtc2taskspace_8cpp.html" title=" " alt="" coords="416,80,564,107"/>
+<area shape="rect" href="job__reader_8cpp.html" title=" " alt="" coords="588,80,707,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="234,229,402,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="5,229,209,256"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="355,155,481,181"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="505,155,667,181"/>
+</map>
+</div>
+</div>
+<p><a href="job__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classJob__reader.html">Job_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Job reader.  <a href="classJob__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/job__reader_8h__dep__incl.map b/doc/html/job__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..2451f531b82a905bf6cec2cd03f63ca8769bbe83
--- /dev/null
+++ b/doc/html/job__reader_8h__dep__incl.map
@@ -0,0 +1,11 @@
+<map id="job_reader.h" name="job_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="352,5,455,32"/>
+<area shape="rect" id="node2" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="91,155,281,181"/>
+<area shape="rect" id="node5" href="$moveit__mediator_8h.html" title=" " alt="" coords="245,80,391,107"/>
+<area shape="rect" id="node8" href="$mtc2taskspace_8cpp.html" title=" " alt="" coords="416,80,564,107"/>
+<area shape="rect" id="node9" href="$job__reader_8cpp.html" title=" " alt="" coords="588,80,707,107"/>
+<area shape="rect" id="node3" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="234,229,402,256"/>
+<area shape="rect" id="node4" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="5,229,209,256"/>
+<area shape="rect" id="node6" href="$cell__routine_8cpp.html" title=" " alt="" coords="355,155,481,181"/>
+<area shape="rect" id="node7" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="505,155,667,181"/>
+</map>
diff --git a/doc/html/job__reader_8h__dep__incl.md5 b/doc/html/job__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d56e024c8e5ed5a28281e925c69c7fedadfa162c
--- /dev/null
+++ b/doc/html/job__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+42be97335fd7f8cd38e90c1eb42859d4
\ No newline at end of file
diff --git a/doc/html/job__reader_8h__dep__incl.png b/doc/html/job__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..35fe83fc7936e19f9f8c0fa855be4b359099658f
Binary files /dev/null and b/doc/html/job__reader_8h__dep__incl.png differ
diff --git a/doc/html/job__reader_8h__incl.map b/doc/html/job__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4f7683ea5b389fc1a2663fe83840ca514644fcd4
--- /dev/null
+++ b/doc/html/job__reader_8h__incl.map
@@ -0,0 +1,13 @@
+<map id="job_reader.h" name="job_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="269,5,372,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="581,87,765,114"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="386,80,557,121"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/job__reader_8h__incl.md5 b/doc/html/job__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e0441fa97206121df61cd5180c7733497f5f1d04
--- /dev/null
+++ b/doc/html/job__reader_8h__incl.md5
@@ -0,0 +1 @@
+c82e66d4f055c71de528cb53d58d487c
\ No newline at end of file
diff --git a/doc/html/job__reader_8h__incl.png b/doc/html/job__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e10060219d2a7830004b79c4b449731dbe19fab1
Binary files /dev/null and b/doc/html/job__reader_8h__incl.png differ
diff --git a/doc/html/job__reader_8h_source.html b/doc/html/job__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..345b6d0fc25b6fe7d954b6f29260595573d73667
--- /dev/null
+++ b/doc/html/job__reader_8h_source.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: job_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">job_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="job__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef JOB_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define JOB_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;boost/circular_buffer.hpp&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classJob__reader.html">   16</a></span>&#160;<span class="keyword">class </span><a class="code" href="classJob__reader.html">Job_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">   18</a></span>&#160;    boost::circular_buffer&lt;std::pair&lt;std::string, job_data&gt;&gt; <a class="code" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a>; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">   26</a></span>&#160;    <a class="code" href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d)</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    {<a class="code" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">read</a>();}</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">   35</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">set_job_data</a>(boost::circular_buffer&lt;std::pair&lt;std::string, job_data&gt;&gt;&amp; <a class="code" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a>) {<a class="code" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a> = <a class="code" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a>;}</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">   41</a></span>&#160;    <span class="keyword">inline</span> boost::circular_buffer&lt;std::pair&lt;std::string, job_data&gt;&gt;&amp; <a class="code" href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">robot_data</a>() {<span class="keywordflow">return</span> <a class="code" href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">job_data_</a>;}</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;};</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassJob__reader_html_a72439a3fe9612af7b44bbf2f5131481a"><div class="ttname"><a href="classJob__reader.html#a72439a3fe9612af7b44bbf2f5131481a">Job_reader::Job_reader</a></div><div class="ttdeci">Job_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Job reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00026">job_reader.h:26</a></div></div>
+<div class="ttc" id="aclassJob__reader_html"><div class="ttname"><a href="classJob__reader.html">Job_reader</a></div><div class="ttdoc">Job reader.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00016">job_reader.h:16</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_ae7af6b2d3734d71bc2d15131733e9c1a"><div class="ttname"><a href="classJob__reader.html#ae7af6b2d3734d71bc2d15131733e9c1a">Job_reader::job_data_</a></div><div class="ttdeci">boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt; &gt; job_data_</div><div class="ttdoc">FIFO job information.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00018">job_reader.h:18</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_a6d8d82c745bb59406821c91c3e09440b"><div class="ttname"><a href="classJob__reader.html#a6d8d82c745bb59406821c91c3e09440b">Job_reader::robot_data</a></div><div class="ttdeci">boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt; &gt; &amp; robot_data()</div><div class="ttdoc">Get Job_data.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00041">job_reader.h:41</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_a828c979dea61dfcf8214c30d11645b07"><div class="ttname"><a href="classJob__reader.html#a828c979dea61dfcf8214c30d11645b07">Job_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementation</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8cpp_source.html#l00005">job_reader.cpp:5</a></div></div>
+<div class="ttc" id="aclassJob__reader_html_a0602b23e66eeea128251f411b0935f81"><div class="ttname"><a href="classJob__reader.html#a0602b23e66eeea128251f411b0935f81">Job_reader::set_job_data</a></div><div class="ttdeci">void set_job_data(boost::circular_buffer&lt; std::pair&lt; std::string, job_data &gt;&gt; &amp;robot_data)</div><div class="ttdoc">Set Job_data.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00035">job_reader.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/jquery.js b/doc/html/jquery.js
new file mode 100644
index 0000000000000000000000000000000000000000..103c32d79b749c24101fba7ff19fd17ee1a59724
--- /dev/null
+++ b/doc/html/jquery.js
@@ -0,0 +1,35 @@
+/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}k.fn=k.prototype={jquery:f,constructor:k,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=k.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return k.each(this,e)},map:function(n){return this.pushStack(k.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},k.extend=k.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(k.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||k.isPlainObject(n)?n:{},i=!1,a[t]=k.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},k.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){b(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(d(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(p,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(d(Object(e))?k.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(d(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g.apply([],a)},guid:1,support:y}),"function"==typeof Symbol&&(k.fn[Symbol.iterator]=t[Symbol.iterator]),k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var h=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,k="sizzle"+1*new Date,m=n.document,S=0,r=0,p=ue(),x=ue(),N=ue(),A=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",$=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",F=new RegExp(M+"+","g"),B=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="<a id='"+k+"'></a><select id='"+k+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!==C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!==C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(F," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[S,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[S,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[k]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace(B,"$1"));return s[k]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[S,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[k]||(e[k]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===S&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[k]&&(v=Ce(v)),y&&!y[k]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[k]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(B,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(B," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=N[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[k]?i.push(a):o.push(a);(a=N(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=S+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t===C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument===C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(S=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(S=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=k.split("").sort(D).join("")===k,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);k.find=h,k.expr=h.selectors,k.expr[":"]=k.expr.pseudos,k.uniqueSort=k.unique=h.uniqueSort,k.text=h.getText,k.isXMLDoc=h.isXML,k.contains=h.contains,k.escapeSelector=h.escape;var T=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&k(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},N=k.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1<i.call(n,e)!==r}):k.filter(n,e,r)}k.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?k.find.matchesSelector(r,e)?[r]:[]:k.find.matches(e,k.grep(t,function(e){return 1===e.nodeType}))},k.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(k(e).filter(function(){for(t=0;t<r;t++)if(k.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)k.find(e,i[t],n);return 1<r?k.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&N.test(e)?k(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(k.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&k(e);if(!N.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&k.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?k.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(k(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(k.uniqueSort(k.merge(this.get(),k(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),k.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return T(e,"parentNode")},parentsUntil:function(e,t,n){return T(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return T(e,"nextSibling")},prevAll:function(e){return T(e,"previousSibling")},nextUntil:function(e,t,n){return T(e,"nextSibling",n)},prevUntil:function(e,t,n){return T(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return"undefined"!=typeof e.contentDocument?e.contentDocument:(A(e,"template")&&(e=e.content||e),k.merge([],e.childNodes))}},function(r,i){k.fn[r]=function(e,t){var n=k.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=k.filter(t,n)),1<this.length&&(O[r]||k.uniqueSort(n),H.test(r)&&n.reverse()),this.pushStack(n)}});var R=/[^\x20\t\r\n\f]+/g;function M(e){return e}function I(e){throw e}function W(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}k.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},k.each(e.match(R)||[],function(e,t){n[t]=!0}),n):k.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){k.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return k.each(arguments,function(e,t){var n;while(-1<(n=k.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<k.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},k.extend({Deferred:function(e){var o=[["notify","progress",k.Callbacks("memory"),k.Callbacks("memory"),2],["resolve","done",k.Callbacks("once memory"),k.Callbacks("once memory"),0,"resolved"],["reject","fail",k.Callbacks("once memory"),k.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return k.Deferred(function(r){k.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,M,s),l(u,o,I,s)):(u++,t.call(e,l(u,o,M,s),l(u,o,I,s),l(u,o,M,o.notifyWith))):(a!==M&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){k.Deferred.exceptionHook&&k.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==I&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(k.Deferred.getStackHook&&(t.stackTrace=k.Deferred.getStackHook()),C.setTimeout(t))}}return k.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:M,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:M)),o[2][3].add(l(0,e,m(n)?n:I))}).promise()},promise:function(e){return null!=e?k.extend(e,a):a}},s={};return k.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=k.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(W(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)W(i[t],a(t),o.reject);return o.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;k.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&$.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},k.readyException=function(e){C.setTimeout(function(){throw e})};var F=k.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),k.ready()}k.fn.ready=function(e){return F.then(e)["catch"](function(e){k.readyException(e)}),this},k.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--k.readyWait:k.isReady)||(k.isReady=!0)!==e&&0<--k.readyWait||F.resolveWith(E,[k])}}),k.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(k.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var _=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)_(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(k(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},z=/^-ms-/,U=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function V(e){return e.replace(z,"ms-").replace(U,X)}var G=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Y(){this.expando=k.expando+Y.uid++}Y.uid=1,Y.prototype={cache:function(e){var t=e[this.expando];return t||(t={},G(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[V(t)]=n;else for(r in t)i[V(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][V(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(V):(t=V(t))in r?[t]:t.match(R)||[]).length;while(n--)delete r[t[n]]}(void 0===t||k.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!k.isEmptyObject(t)}};var Q=new Y,J=new Y,K=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function ee(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Z,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:K.test(i)?JSON.parse(i):i)}catch(e){}J.set(e,t,n)}else n=void 0;return n}k.extend({hasData:function(e){return J.hasData(e)||Q.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return Q.access(e,t,n)},_removeData:function(e,t){Q.remove(e,t)}}),k.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=J.get(o),1===o.nodeType&&!Q.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=V(r.slice(5)),ee(o,r,i[r]));Q.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){J.set(this,n)}):_(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=J.get(o,n))?t:void 0!==(t=ee(o,n))?t:void 0;this.each(function(){J.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),k.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Q.get(e,t),n&&(!r||Array.isArray(n)?r=Q.access(e,t,k.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=k.queue(e,t),r=n.length,i=n.shift(),o=k._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){k.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Q.get(e,n)||Q.access(e,n,{empty:k.Callbacks("once memory").add(function(){Q.remove(e,[t+"queue",n])})})}}),k.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?k.queue(this[0],t):void 0===n?this:this.each(function(){var e=k.queue(this,t,n);k._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&k.dequeue(this,t)})},dequeue:function(e){return this.each(function(){k.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=k.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Q.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var te=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ne=new RegExp("^(?:([+-])=|)("+te+")([a-z%]*)$","i"),re=["Top","Right","Bottom","Left"],ie=E.documentElement,oe=function(e){return k.contains(e.ownerDocument,e)},ae={composed:!0};ie.getRootNode&&(oe=function(e){return k.contains(e.ownerDocument,e)||e.getRootNode(ae)===e.ownerDocument});var se=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&oe(e)&&"none"===k.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];for(o in i=n.apply(e,r||[]),t)e.style[o]=a[o];return i};function le(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return k.css(e,t,"")},u=s(),l=n&&n[3]||(k.cssNumber[t]?"":"px"),c=e.nodeType&&(k.cssNumber[t]||"px"!==l&&+u)&&ne.exec(k.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)k.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,k.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ce={};function fe(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Q.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&se(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ce[s])||(o=a.body.appendChild(a.createElement(s)),u=k.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ce[s]=u)))):"none"!==n&&(l[c]="none",Q.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}k.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){se(this)?k(this).show():k(this).hide()})}});var pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Q.set(e[n],"globalEval",!t||Q.get(t[n],"globalEval"))}ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;var me,xe,be=/<|&#?\w+;/;function we(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))k.merge(p,o.nodeType?[o]:o);else if(be.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+k.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;k.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<k.inArray(o,r))i&&i.push(o);else if(l=oe(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}me=E.createDocumentFragment().appendChild(E.createElement("div")),(xe=E.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),me.appendChild(xe),y.checkClone=me.cloneNode(!0).cloneNode(!0).lastChild.checked,me.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){a=k.event.handlers.call(this,s,l),t=0;while((i=a[t++])&&!s.isPropagationStopped()){s.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!s.isImmediatePropagationStopped())s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((k.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<k(i,this).index(l):k.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(k.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[k.expando]?e:new k.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click",ke),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Q.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},k.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},k.Event=function(e,t){if(!(this instanceof k.Event))return new k.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?ke:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&k.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[k.expando]=!0},k.Event.prototype={constructor:k.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=ke,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=ke,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=ke,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},k.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Te.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},k.event.addProp),k.each({focus:"focusin",blur:"focusout"},function(e,t){k.event.special[e]={setup:function(){return De(this,e,Ne),!1},trigger:function(){return De(this,e),!0},delegateType:t}}),k.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){k.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||k.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),k.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,k(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each(function(){k.event.remove(this,e,n,t)})}});var je=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/<script|<style|<link/i,Le=/checked\s*(?:[^=]|=\s*.checked.)/i,He=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)k.event.add(t,i,l[i][n]);J.hasData(e)&&(s=J.access(e),u=k.extend({},s),J.set(t,u))}}function Ie(n,r,i,o){r=g.apply([],r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Le.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Ie(t,r,i,o)});if(f&&(t=(e=we(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=k.map(ve(e,"script"),Pe)).length;c<f;c++)u=e,c!==p&&(u=k.clone(u,!0,!0),s&&k.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,k.map(a,Re),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Q.access(u,"globalEval")&&k.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?k._evalUrl&&!u.noModule&&k._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):b(u.textContent.replace(He,""),u,l))}return n}function We(e,t,n){for(var r,i=t?k.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||k.cleanData(ve(r)),r.parentNode&&(n&&oe(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}k.extend({htmlPrefilter:function(e){return e.replace(je,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Me(o[r],a[r]);else Me(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=k.event.special,o=0;void 0!==(n=e[o]);o++)if(G(n)){if(t=n[Q.expando]){if(t.events)for(r in t.events)i[r]?k.event.remove(n,r):k.removeEvent(n,r,t.handle);n[Q.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),k.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return _(this,function(e){return void 0===e?k.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Ie(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)})},prepend:function(){return Ie(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(k.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return k.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!qe.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=k.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(k.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Ie(this,arguments,function(e){var t=this.parentNode;k.inArray(this,n)<0&&(k.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),k.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){k.fn[e]=function(e){for(var t,n=[],r=k(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),k(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var $e=new RegExp("^("+te+")(?!px)[a-z%]+$","i"),Fe=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Be=new RegExp(re.join("|"),"i");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||oe(e)||(a=k.style(e,t)),!y.pixelBoxStyles()&&$e.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ie.appendChild(s).appendChild(u);var e=C.getComputedStyle(u);n="1%"!==e.top,a=12===t(e.marginLeft),u.style.right="60%",o=36===t(e.right),r=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ie.removeChild(s),u=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s=E.createElement("div"),u=E.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===u.style.backgroundClip,k.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),a},scrollboxSize:function(){return e(),i}}))}();var Ue=["Webkit","Moz","ms"],Xe=E.createElement("div").style,Ve={};function Ge(e){var t=k.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;while(n--)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:"absolute",visibility:"hidden",display:"block"},Ke={letterSpacing:"0",fontWeight:"400"};function Ze(e,t,n){var r=ne.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function et(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=k.css(e,n+re[a],!0,i)),r?("content"===n&&(u-=k.css(e,"padding"+re[a],!0,i)),"margin"!==n&&(u-=k.css(e,"border"+re[a]+"Width",!0,i))):(u+=k.css(e,"padding"+re[a],!0,i),"padding"!==n?u+=k.css(e,"border"+re[a]+"Width",!0,i):s+=k.css(e,"border"+re[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!y.boxSizingReliable()||n)&&"border-box"===k.css(e,"boxSizing",!1,r),o=i,a=_e(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if($e.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===k.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===k.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?"border":"content"),o,r,a)+"px"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}k.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=V(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=k.cssHooks[t]||k.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=ne.exec(n))&&i[1]&&(n=le(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(k.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=V(t);return Qe.test(t)||(t=Ge(s)),(a=k.cssHooks[t]||k.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),"normal"===i&&t in Ke&&(i=Ke[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),k.each(["height","width"],function(e,u){k.cssHooks[u]={get:function(e,t,n){if(t)return!Ye.test(k.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,u,n):ue(e,Je,function(){return tt(e,u,n)})},set:function(e,t,n){var r,i=Fe(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===k.css(e,"boxSizing",!1,i),s=n?et(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-et(e,u,"border",!1,i)-.5)),s&&(r=ne.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=k.css(e,u)),Ze(0,t,s)}}}),k.cssHooks.marginLeft=ze(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(_e(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),k.each({margin:"",padding:"",border:"Width"},function(i,o){k.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+re[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(k.cssHooks[i+o].set=Ze)}),k.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=k.css(e,t[a],!1,r);return o}return void 0!==n?k.style(e,t,n):k.css(e,t)},e,t,1<arguments.length)}}),((k.Tween=nt).prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||k.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(k.cssNumber[n]?"":"px")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=k.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}}).init.prototype=nt.prototype,(nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=k.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){k.fx.step[e.prop]?k.fx.step[e.prop](e):1!==e.elem.nodeType||!k.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:k.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},k.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},k.fx=nt.prototype.init,k.fx.step={};var rt,it,ot,at,st=/^(?:toggle|show|hide)$/,ut=/queueHooks$/;function lt(){it&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(lt):C.setTimeout(lt,k.fx.interval),k.fx.tick())}function ct(){return C.setTimeout(function(){rt=void 0}),rt=Date.now()}function ft(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=re[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function dt(o,e,t){var n,a,r=0,i=dt.prefilters.length,s=k.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=rt||ct(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:k.extend({},e),opts:k.extend(!0,{specialEasing:{},easing:k.easing._default},t),originalProperties:e,originalOptions:t,startTime:rt||ct(),duration:t.duration,tweens:[],createTween:function(e,t){var n=k.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=V(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=k.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=dt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(k._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return k.map(c,pt,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),k.fx.timer(k.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}k.Animation=k.extend(dt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return le(n.elem,e,ne.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(R);for(var n,r=0,i=e.length;r<i;r++)n=e[r],dt.tweeners[n]=dt.tweeners[n]||[],dt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&se(e),v=Q.get(e,"fxshow");for(r in n.queue||(null==(a=k._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,k.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],st.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||k.style(e,r)}if((u=!k.isEmptyObject(t))||!k.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Q.get(e,"display")),"none"===(c=k.css(e,"display"))&&(l?c=l:(fe([e],!0),l=e.style.display||l,c=k.css(e,"display"),fe([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===k.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Q.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&fe([e],!0),p.done(function(){for(r in g||fe([e]),Q.remove(e,"fxshow"),d)k.style(e,r,d[r])})),u=pt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?dt.prefilters.unshift(e):dt.prefilters.push(e)}}),k.speed=function(e,t,n){var r=e&&"object"==typeof e?k.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return k.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in k.fx.speeds?r.duration=k.fx.speeds[r.duration]:r.duration=k.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&k.dequeue(this,r.queue)},r},k.fn.extend({fadeTo:function(e,t,n,r){return this.filter(se).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=k.isEmptyObject(t),o=k.speed(e,n,r),a=function(){var e=dt(this,k.extend({},t),o);(i||Q.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=k.timers,r=Q.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&ut.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||k.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Q.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=k.timers,o=n?n.length:0;for(t.finish=!0,k.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),k.each(["toggle","show","hide"],function(e,r){var i=k.fn[r];k.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(ft(r,!0),e,t,n)}}),k.each({slideDown:ft("show"),slideUp:ft("hide"),slideToggle:ft("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){k.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),k.timers=[],k.fx.tick=function(){var e,t=0,n=k.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||k.fx.stop(),rt=void 0},k.fx.timer=function(e){k.timers.push(e),k.fx.start()},k.fx.interval=13,k.fx.start=function(){it||(it=!0,lt())},k.fx.stop=function(){it=null},k.fx.speeds={slow:600,fast:200,_default:400},k.fn.delay=function(r,e){return r=k.fx&&k.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},ot=E.createElement("input"),at=E.createElement("select").appendChild(E.createElement("option")),ot.type="checkbox",y.checkOn=""!==ot.value,y.optSelected=at.selected,(ot=E.createElement("input")).value="t",ot.type="radio",y.radioValue="t"===ot.value;var ht,gt=k.expr.attrHandle;k.fn.extend({attr:function(e,t){return _(this,k.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){k.removeAttr(this,e)})}}),k.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?k.prop(e,t,n):(1===o&&k.isXMLDoc(e)||(i=k.attrHooks[t.toLowerCase()]||(k.expr.match.bool.test(t)?ht:void 0)),void 0!==n?null===n?void k.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=k.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(R);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ht={set:function(e,t,n){return!1===t?k.removeAttr(e,n):e.setAttribute(n,n),n}},k.each(k.expr.match.bool.source.match(/\w+/g),function(e,t){var a=gt[t]||k.find.attr;gt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=gt[o],gt[o]=r,r=null!=a(e,t,n)?o:null,gt[o]=i),r}});var vt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;function mt(e){return(e.match(R)||[]).join(" ")}function xt(e){return e.getAttribute&&e.getAttribute("class")||""}function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(R)||[]}k.fn.extend({prop:function(e,t){return _(this,k.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[k.propFix[e]||e]})}}),k.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&k.isXMLDoc(e)||(t=k.propFix[t]||t,i=k.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=k.find.attr(e,"tabindex");return t?parseInt(t,10):vt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(k.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),k.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){k.propFix[this.toLowerCase()]=this}),k.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).addClass(t.call(this,e,xt(this)))});if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).removeClass(t.call(this,e,xt(this)))});if(!arguments.length)return this.attr("class","");if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){k(this).toggleClass(i.call(this,e,xt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=k(this),r=bt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=xt(this))&&Q.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Q.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+mt(xt(n))+" ").indexOf(t))return!0;return!1}});var wt=/\r/g;k.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,k(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=k.map(t,function(e){return null==e?"":e+""})),(r=k.valHooks[this.type]||k.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=k.valHooks[t.type]||k.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(wt,""):null==e?"":e:void 0}}),k.extend({valHooks:{option:{get:function(e){var t=k.find.attr(e,"value");return null!=t?t:mt(k.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=k(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=k.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<k.inArray(k.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),k.each(["radio","checkbox"],function(){k.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<k.inArray(k(e).val(),t)}},y.checkOn||(k.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var Tt=/^(?:focusinfocus|focusoutblur)$/,Ct=function(e){e.stopPropagation()};k.extend(k.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!Tt.test(d+k.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[k.expando]?e:new k.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:k.makeArray(t,[e]),c=k.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,Tt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Q.get(o,"events")||{})[e.type]&&Q.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&G(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!G(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),k.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,Ct),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,Ct),k.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=k.extend(new k.Event,n,{type:e,isSimulated:!0});k.event.trigger(r,null,t)}}),k.fn.extend({trigger:function(e,t){return this.each(function(){k.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return k.event.trigger(e,t,n,!0)}}),y.focusin||k.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){k.event.simulate(r,e.target,k.event.fix(e))};k.event.special[r]={setup:function(){var e=this.ownerDocument||this,t=Q.access(e,r);t||e.addEventListener(n,i,!0),Q.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=Q.access(e,r)-1;t?Q.access(e,r,t):(e.removeEventListener(n,i,!0),Q.remove(e,r))}}});var Et=C.location,kt=Date.now(),St=/\?/;k.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||k.error("Invalid XML: "+e),t};var Nt=/\[\]$/,At=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,jt=/^(?:input|select|textarea|keygen)/i;function qt(n,e,r,i){var t;if(Array.isArray(e))k.each(e,function(e,t){r||Nt.test(n)?i(n,t):qt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)qt(n+"["+t+"]",e[t],r,i)}k.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!k.isPlainObject(e))k.each(e,function(){i(this.name,this.value)});else for(n in e)qt(n,e[n],t,i);return r.join("&")},k.fn.extend({serialize:function(){return k.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=k.prop(this,"elements");return e?k.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!k(this).is(":disabled")&&jt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=k(this).val();return null==n?null:Array.isArray(n)?k.map(n,function(e){return{name:t.name,value:e.replace(At,"\r\n")}}):{name:t.name,value:n.replace(At,"\r\n")}}).get()}});var Lt=/%20/g,Ht=/#.*$/,Ot=/([?&])_=[^&]*/,Pt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Rt=/^(?:GET|HEAD)$/,Mt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Ft=E.createElement("a");function Bt(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(R)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function _t(t,i,o,a){var s={},u=t===Wt;function l(e){var r;return s[e]=!0,k.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function zt(e,t){var n,r,i=k.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&k.extend(!0,e,r),e}Ft.href=Et.href,k.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":k.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,k.ajaxSettings),t):zt(k.ajaxSettings,e)},ajaxPrefilter:Bt(It),ajaxTransport:Bt(Wt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=k.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?k(y):k.event,x=k.Deferred(),b=k.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Pt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Et.href)+"").replace(Mt,Et.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(R)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Ft.protocol+"//"+Ft.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=k.param(v.data,v.traditional)),_t(It,v,t,T),h)return T;for(i in(g=k.event&&v.global)&&0==k.active++&&k.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Rt.test(v.type),f=v.url.replace(Ht,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Lt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(St.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Ot,"$1"),o=(St.test(f)?"&":"?")+"_="+kt+++o),v.url=f+o),v.ifModified&&(k.lastModified[f]&&T.setRequestHeader("If-Modified-Since",k.lastModified[f]),k.etag[f]&&T.setRequestHeader("If-None-Match",k.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+$t+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=_t(Wt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(k.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(k.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--k.active||k.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return k.get(e,t,n,"json")},getScript:function(e,t){return k.get(e,void 0,t,"script")}}),k.each(["get","post"],function(e,i){k[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),k.ajax(k.extend({url:e,type:i,dataType:r,data:t,success:n},k.isPlainObject(e)&&e))}}),k._evalUrl=function(e,t){return k.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){k.globalEval(e,t)}})},k.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=k(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){k(this).wrapInner(n.call(this,e))}):this.each(function(){var e=k(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){k(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){k(this).replaceWith(this.childNodes)}),this}}),k.expr.pseudos.hidden=function(e){return!k.expr.pseudos.visible(e)},k.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},k.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Xt=k.ajaxSettings.xhr();y.cors=!!Xt&&"withCredentials"in Xt,y.ajax=Xt=!!Xt,k.ajaxTransport(function(i){var o,a;if(y.cors||Xt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Ut[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),k.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),k.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return k.globalEval(e),e}}}),k.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),k.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=k("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=mt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&k.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?k("<div>").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),k.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),k.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),k.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||k.guid++,i},k.holdReady=function(e){e?k.readyWait++:k.ready(!0)},k.isArray=Array.isArray,k.parseJSON=JSON.parse,k.nodeName=A,k.isFunction=m,k.isWindow=x,k.camelCase=V,k.type=w,k.now=Date.now,k.isNumeric=function(e){var t=k.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return k});var Qt=C.jQuery,Jt=C.$;return k.noConflict=function(e){return C.$===k&&(C.$=Jt),e&&C.jQuery===k&&(C.jQuery=Qt),k},e||(C.jQuery=C.$=k),k});
+/*! jQuery UI - v1.12.1 - 2019-01-27
+* http://jqueryui.com
+* Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-1-7.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/resizable.js, widgets/mouse.js
+* Copyright jQuery Foundation and other contributors; Licensed MIT */
+
+(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){function e(t){for(var e=t.css("visibility");"inherit"===e;)t=t.parent(),e=t.css("visibility");return"hidden"!==e}t.ui=t.ui||{},t.ui.version="1.12.1";var i=0,s=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},h=e.split(".")[0];e=e.split(".")[1];var l=h+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][l.toLowerCase()]=function(e){return!!t.data(e,l)},t[h]=t[h]||{},n=t[h][e],o=t[h][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:h,widgetName:e,widgetFullName:l}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var i,n,o=s.call(arguments,1),a=0,r=o.length;r>a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,o="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:o?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType,o=!s&&!n;return{element:i,isWindow:s,isDocument:n,offset:o?t(e).offset():{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:i.outerWidth(),height:i.outerHeight()}}},t.fn.position=function(n){if(!n||!n.of)return d.apply(this,arguments);n=t.extend({},n);var u,p,f,m,g,_,v=t(n.of),b=t.position.getWithinInfo(n.within),y=t.position.getScrollInfo(b),w=(n.collision||"flip").split(" "),x={};return _=s(v),v[0].preventDefault&&(n.at="left top"),p=_.width,f=_.height,m=_.offset,g=t.extend({},m),t.each(["my","at"],function(){var t,e,i=(n[this]||"").split(" ");1===i.length&&(i=r.test(i[0])?i.concat(["center"]):h.test(i[0])?["center"].concat(i):["center","center"]),i[0]=r.test(i[0])?i[0]:"center",i[1]=h.test(i[1])?i[1]:"center",t=l.exec(i[0]),e=l.exec(i[1]),x[this]=[t?t[0]:0,e?e[0]:0],n[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===n.at[0]?g.left+=p:"center"===n.at[0]&&(g.left+=p/2),"bottom"===n.at[1]?g.top+=f:"center"===n.at[1]&&(g.top+=f/2),u=e(x.at,p,f),g.left+=u[0],g.top+=u[1],this.each(function(){var s,r,h=t(this),l=h.outerWidth(),c=h.outerHeight(),d=i(this,"marginLeft"),_=i(this,"marginTop"),k=l+d+i(this,"marginRight")+y.width,C=c+_+i(this,"marginBottom")+y.height,D=t.extend({},g),T=e(x.my,h.outerWidth(),h.outerHeight());"right"===n.my[0]?D.left-=l:"center"===n.my[0]&&(D.left-=l/2),"bottom"===n.my[1]?D.top-=c:"center"===n.my[1]&&(D.top-=c/2),D.left+=T[0],D.top+=T[1],s={marginLeft:d,marginTop:_},t.each(["left","top"],function(e,i){t.ui.position[w[e]]&&t.ui.position[w[e]][i](D,{targetWidth:p,targetHeight:f,elemWidth:l,elemHeight:c,collisionPosition:s,collisionWidth:k,collisionHeight:C,offset:[u[0]+T[0],u[1]+T[1]],my:n.my,at:n.at,within:b,elem:h})}),n.using&&(r=function(t){var e=m.left-D.left,i=e+p-l,s=m.top-D.top,r=s+f-c,u={target:{element:v,left:m.left,top:m.top,width:p,height:f},element:{element:h,left:D.left,top:D.top,width:l,height:c},horizontal:0>i?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("<div>"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element
+},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/**
+ * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler
+ * Licensed under MIT
+ * @author Ariel Flesler
+ * @version 2.1.2
+ */
+;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case "number":case "string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e= h(e);break}e=l?$(e):$(e,q);case "object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&& "%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()}, set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
+/*!
+ PowerTip v1.3.1 (2018-04-15)
+ https://stevenbenner.github.io/jquery-powertip/
+ Copyright (c) 2018 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(root,factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"))}else{factory(root.jQuery)}})(this,function($){var $document=$(document),$window=$(window),$body=$("body");var DATA_DISPLAYCONTROLLER="displayController",DATA_HASACTIVEHOVER="hasActiveHover",DATA_FORCEDOPEN="forcedOpen",DATA_HASMOUSEMOVE="hasMouseMove",DATA_MOUSEONTOTIP="mouseOnToPopup",DATA_ORIGINALTITLE="originalTitle",DATA_POWERTIP="powertip",DATA_POWERTIPJQ="powertipjq",DATA_POWERTIPTARGET="powertiptarget",EVENT_NAMESPACE=".powertip",RAD2DEG=180/Math.PI,MOUSE_EVENTS=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","mouseenter","mouseleave","contextmenu"];var session={tooltips:null,isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,closeDelayTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var Collision={none:0,top:1,bottom:2,left:4,right:8};$.fn.powerTip=function(opts,arg){var targetElements=this,options,tipController;if(!targetElements.length){return targetElements}if($.type(opts)==="string"&&$.powerTip[opts]){return $.powerTip[opts].call(targetElements,targetElements,arg)}options=$.extend({},$.fn.powerTip.defaults,opts);tipController=new TooltipController(options);initTracking();targetElements.each(function elementSetup(){var $this=$(this),dataPowertip=$this.data(DATA_POWERTIP),dataElem=$this.data(DATA_POWERTIPJQ),dataTarget=$this.data(DATA_POWERTIPTARGET),title=$this.attr("title");if(!dataPowertip&&!dataTarget&&!dataElem&&title){$this.data(DATA_POWERTIP,title);$this.data(DATA_ORIGINALTITLE,title);$this.removeAttr("title")}$this.data(DATA_DISPLAYCONTROLLER,new DisplayController($this,options,tipController))});if(!options.manual){$.each(options.openEvents,function(idx,evt){if($.inArray(evt,options.closeEvents)>-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference<options.intentSensitivity){cancelClose();closeAnyDelayed();tipController.showTip(element)}else{session.previousX=session.currentX;session.previousY=session.currentY;openTooltip()}}function cancelTimer(stopClose){hoverTimer=clearTimeout(hoverTimer);if(session.closeDelayTimeout&&myCloseDelay===session.closeDelayTimeout||stopClose){cancelClose()}}function cancelClose(){session.closeDelayTimeout=clearTimeout(session.closeDelayTimeout);session.delayInProgress=false}function closeAnyDelayed(){if(session.delayInProgress&&session.activeHover&&!session.activeHover.is(element)){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide(true)}}function repositionTooltip(){tipController.resetPosition(element)}this.show=openTooltip;this.hide=closeTooltip;this.cancel=cancelTimer;this.resetPosition=repositionTooltip}function PlacementCalculator(){function computePlacementCoords(element,placement,tipWidth,tipHeight,offset){var placementBase=placement.split("-")[0],coords=new CSSCoordinates,position;if(isSvgElement(element)){position=getSvgPlacement(element,placementBase)}else{position=getHtmlPlacement(element,placementBase)}switch(placement){case"n":coords.set("left",position.left-tipWidth/2);coords.set("bottom",session.windowHeight-position.top+offset);break;case"e":coords.set("left",position.left+offset);coords.set("top",position.top-tipHeight/2);break;case"s":coords.set("left",position.left-tipWidth/2);coords.set("top",position.top+offset);break;case"w":coords.set("top",position.top-tipHeight/2);coords.set("right",session.windowWidth-position.left+offset);break;case"nw":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"nw-alt":coords.set("left",position.left);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne":coords.set("left",position.left-20);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne-alt":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left);break;case"sw":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"sw-alt":coords.set("left",position.left);coords.set("top",position.top+offset);break;case"se":coords.set("left",position.left-20);coords.set("top",position.top+offset);break;case"se-alt":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left);break}return coords}function getHtmlPlacement(element,placement){var objectOffset=element.offset(),objectWidth=element.outerWidth(),objectHeight=element.outerHeight(),left,top;switch(placement){case"n":left=objectOffset.left+objectWidth/2;top=objectOffset.top;break;case"e":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight/2;break;case"s":left=objectOffset.left+objectWidth/2;top=objectOffset.top+objectHeight;break;case"w":left=objectOffset.left;top=objectOffset.top+objectHeight/2;break;case"nw":left=objectOffset.left;top=objectOffset.top;break;case"ne":left=objectOffset.left+objectWidth;top=objectOffset.top;break;case"sw":left=objectOffset.left;top=objectOffset.top+objectHeight;break;case"se":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight;break}return{top:top,left:left}}function getSvgPlacement(element,placement){var svgElement=element.closest("svg")[0],domElement=element[0],point=svgElement.createSVGPoint(),boundingBox=domElement.getBBox(),matrix=domElement.getScreenCTM(),halfWidth=boundingBox.width/2,halfHeight=boundingBox.height/2,placements=[],placementKeys=["nw","n","ne","e","se","s","sw","w"],coords,rotation,steps,x;function pushPlacement(){placements.push(point.matrixTransform(matrix))}point.x=boundingBox.x;point.y=boundingBox.y;pushPlacement();point.x+=halfWidth;pushPlacement();point.x+=halfWidth;pushPlacement();point.y+=halfHeight;pushPlacement();point.y+=halfHeight;pushPlacement();point.x-=halfWidth;pushPlacement();point.x-=halfWidth;pushPlacement();point.y-=halfHeight;pushPlacement();if(placements[0].y!==placements[1].y||placements[0].x!==placements[7].x){rotation=Math.atan2(matrix.b,matrix.a)*RAD2DEG;steps=Math.ceil((rotation%360-22.5)/45);if(steps<1){steps+=8}while(steps--){placementKeys.push(placementKeys.shift())}}for(x=0;x<placements.length;x++){if(placementKeys[x]===placement){coords=placements[x];break}}return{top:coords.y+session.scrollTop,left:coords.x+session.scrollLeft}}this.compute=computePlacementCoords}function TooltipController(options){var placementCalculator=new PlacementCalculator,tipElement=$("#"+options.popupId);if(tipElement.length===0){tipElement=$("<div/>",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.top<viewportTop||Math.abs(coords.bottom-session.windowHeight)-elementHeight<viewportTop){collisions|=Collision.top}if(coords.top+elementHeight>viewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.left<viewportLeft||coords.right+elementWidth>viewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right<viewportLeft){collisions|=Collision.right}return collisions}function countFlags(value){var count=0;while(value){value&=value-1;count++}return count}return $.powerTip});/*!
+ * jQuery UI Touch Punch 0.2.3
+ *
+ * Copyright 2011–2014, Dave Furfero
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ *
+ * Depends:
+ *  jquery.ui.widget.js
+ *  jquery.ui.mouse.js
+ */
+!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],$('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y<o.upEnd)&&a.eq(o.up?1:0).show(),o.y==n)mouse&&a.eq(o.up?0:1).hide(),this.menuScrollStop(t);else if(!e){this.opts.scrollAccelerate&&o.step<this.opts.scrollStep&&(o.step+=.2);var h=this;this.scrollTimeout=requestAnimationFrame(function(){h.menuScroll(t)})}},menuScrollMousewheel:function(t,e){if(this.getClosestMenu(e.target)==t[0]){e=e.originalEvent;var i=(e.wheelDelta||-e.detail)>0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
\ No newline at end of file
diff --git a/doc/html/log__decorator_8cpp.html b/doc/html/log__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..40b753496f559a39e8bc12e885c1c50313883bd9
--- /dev/null
+++ b/doc/html/log__decorator_8cpp.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: log_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">log_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="log__decorator_8h_source.html">robot_element/decorators/log_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for log_decorator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="log__decorator_8cpp__incl.png" border="0" usemap="#log__decorator_8cpp" alt=""/></div>
+<map name="log__decorator_8cpp" id="log__decorator_8cpp">
+<area shape="rect" title=" " alt="" coords="31,5,170,32"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="5,80,196,121"/>
+<area shape="rect" title=" " alt="" coords="101,363,180,389"/>
+<area shape="rect" title=" " alt="" coords="27,177,174,218"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="199,169,389,225"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="207,273,381,315"/>
+<area shape="rect" title=" " alt="" coords="204,363,403,389"/>
+</map>
+</div>
+</div>
+<p><a href="log__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/log__decorator_8cpp__incl.map b/doc/html/log__decorator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..a873699c3e0391aa8b3ec6ec9ad6fd5a26df143a
--- /dev/null
+++ b/doc/html/log__decorator_8cpp__incl.map
@@ -0,0 +1,9 @@
+<map id="log_decorator.cpp" name="log_decorator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="31,5,170,32"/>
+<area shape="rect" id="node2" href="$log__decorator_8h.html" title=" " alt="" coords="5,80,196,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="101,363,180,389"/>
+<area shape="rect" id="node4" title=" " alt="" coords="27,177,174,218"/>
+<area shape="rect" id="node5" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="199,169,389,225"/>
+<area shape="rect" id="node6" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="207,273,381,315"/>
+<area shape="rect" id="node7" title=" " alt="" coords="204,363,403,389"/>
+</map>
diff --git a/doc/html/log__decorator_8cpp__incl.md5 b/doc/html/log__decorator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..5360d3c17c9a886b97c254d8345e945ffea48ee7
--- /dev/null
+++ b/doc/html/log__decorator_8cpp__incl.md5
@@ -0,0 +1 @@
+ac81fa4d9a9cb23f4aa024369d296d79
\ No newline at end of file
diff --git a/doc/html/log__decorator_8cpp__incl.png b/doc/html/log__decorator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..7976c95477a091f5249df641a2b74c6878d19203
Binary files /dev/null and b/doc/html/log__decorator_8cpp__incl.png differ
diff --git a/doc/html/log__decorator_8cpp_source.html b/doc/html/log__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..a047750f391562a42466a93b1340556f8e3087f9
--- /dev/null
+++ b/doc/html/log__decorator_8cpp_source.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: log_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_129dfe63f339df39af9b29f455952c18.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">log_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="log__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="log__decorator_8h.html">robot_element/decorators/log_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">    3</a></span>&#160;<a class="code" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator::Log_decorator</a>(std::unique_ptr&lt;Abstract_robot_element&gt; next) </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;: <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>(std::move(next))</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;LOG Decorator: %s&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>().c_str());</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;}</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">    9</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator::input_filter</a>() {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- Debug: %s --- State: PRE UPDATE&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>().c_str());</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; Debug: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getX(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getY(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getZ());</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; Debug: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getX(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getY(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getZ(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getW());</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;}</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">   15</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator::update</a>(tf2::Transform&amp; tf) {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">input_filter</a>();</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a>(tf);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">output_filter</a>();</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;}</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">   21</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator::output_filter</a>() {</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- Debug: %s --- State: POST UPDATE&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>().c_str());</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; Debug: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getX(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getY(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getOrigin().getZ());</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; Debug: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getX(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getY(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getZ(), <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>().getRotation().getW());</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassLog__decorator_html_abac3ce8b5ef982e3a030a152cfcc2290"><div class="ttname"><a href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator::Log_decorator</a></div><div class="ttdeci">Log_decorator(std::unique_ptr&lt; Abstract_robot_element &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00003">log_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_a7c3305b339a0e539d60bd92d59f5c835"><div class="ttname"><a href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00021">log_decorator.cpp:21</a></div></div>
+<div class="ttc" id="alog__decorator_8h_html"><div class="ttname"><a href="log__decorator_8h.html">log_decorator.h</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_a9fdbd079b56b93f87a9b325397d9d57a"><div class="ttname"><a href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00015">log_decorator.cpp:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a910a29582a54972c947fa57bbdc444ec"><div class="ttname"><a href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element::name</a></div><div class="ttdeci">virtual std::string &amp; name()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">impl/abstract_robot_element_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ad077cbfa7a43d1212b78cd61bcbf37a6"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">Abstract_robot_element_decorator::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00021">robot_element/decorators/abstract_robot_element_decorator.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_ac31262be083a8b9f2105b7f0211db7d6"><div class="ttname"><a href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator::input_filter</a></div><div class="ttdeci">void input_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00009">log_decorator.cpp:9</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/log__decorator_8h.html b/doc/html/log__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c87da7554f506d24781edddf5e630cb1a01952a
--- /dev/null
+++ b/doc/html/log__decorator_8h.html
@@ -0,0 +1,75 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: log_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">log_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;visualization_msgs/Marker.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for log_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="log__decorator_8h__incl.png" border="0" usemap="#log__decorator_8h" alt=""/></div>
+<map name="log__decorator_8h" id="log__decorator_8h">
+<area shape="rect" title=" " alt="" coords="37,5,160,32"/>
+<area shape="rect" title=" " alt="" coords="99,273,178,300"/>
+<area shape="rect" title=" " alt="" coords="25,87,172,129"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="197,80,387,136"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="205,184,379,225"/>
+<area shape="rect" title=" " alt="" coords="202,273,401,300"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="log__decorator_8h__dep__incl.png" border="0" usemap="#log__decorator_8hdep" alt=""/></div>
+<map name="log__decorator_8hdep" id="log__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="279,5,401,32"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" href="log__decorator_8cpp.html" title=" " alt="" coords="377,80,516,107"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
+</div>
+</div>
+<p><a href="log__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLog__decorator.html">Log_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/log__decorator_8h__dep__incl.map b/doc/html/log__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..ca2d775e14341ad9c91af07945466a5be6f06ac2
--- /dev/null
+++ b/doc/html/log__decorator_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="log_decorator.h" name="log_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="279,5,401,32"/>
+<area shape="rect" id="node2" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" id="node4" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" id="node5" href="$log__decorator_8cpp.html" title=" " alt="" coords="377,80,516,107"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
diff --git a/doc/html/log__decorator_8h__dep__incl.md5 b/doc/html/log__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1a7725274b2d03a10abe04bee0543d62c78aabf1
--- /dev/null
+++ b/doc/html/log__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+c9471711ac6b8d43fed9551dc7f8d026
\ No newline at end of file
diff --git a/doc/html/log__decorator_8h__dep__incl.png b/doc/html/log__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e51b29c1eb0105c777977e468c00c91466fd96bb
Binary files /dev/null and b/doc/html/log__decorator_8h__dep__incl.png differ
diff --git a/doc/html/log__decorator_8h__incl.map b/doc/html/log__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d0565ef9a0d753685262ea261d399f3d02c601b0
--- /dev/null
+++ b/doc/html/log__decorator_8h__incl.map
@@ -0,0 +1,8 @@
+<map id="log_decorator.h" name="log_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="37,5,160,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="99,273,178,300"/>
+<area shape="rect" id="node3" title=" " alt="" coords="25,87,172,129"/>
+<area shape="rect" id="node4" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="197,80,387,136"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="205,184,379,225"/>
+<area shape="rect" id="node6" title=" " alt="" coords="202,273,401,300"/>
+</map>
diff --git a/doc/html/log__decorator_8h__incl.md5 b/doc/html/log__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..93bd393d4965fa834b3277883a3b0e27b344c006
--- /dev/null
+++ b/doc/html/log__decorator_8h__incl.md5
@@ -0,0 +1 @@
+1666432ac7d6b3eda0ed3c9f177bdeb6
\ No newline at end of file
diff --git a/doc/html/log__decorator_8h__incl.png b/doc/html/log__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b462753abc28a8be84f1a943083eddad71569226
Binary files /dev/null and b/doc/html/log__decorator_8h__incl.png differ
diff --git a/doc/html/log__decorator_8h_source.html b/doc/html/log__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..bf483bf15731a4909704724bbb3d6b8bc5a8a7ce
--- /dev/null
+++ b/doc/html/log__decorator_8h_source.html
@@ -0,0 +1,63 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: log_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">log_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="log__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef LOG_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define LOG_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;visualization_msgs/Marker.h&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classLog__decorator.html">    8</a></span>&#160;<span class="keyword">class </span><a class="code" href="classLog__decorator.html">Log_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>{</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator</a>(std::unique_ptr&lt;Abstract_robot_element&gt; <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">input_filter</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">output_filter</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;};</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassLog__decorator_html_abac3ce8b5ef982e3a030a152cfcc2290"><div class="ttname"><a href="classLog__decorator.html#abac3ce8b5ef982e3a030a152cfcc2290">Log_decorator::Log_decorator</a></div><div class="ttdeci">Log_decorator(std::unique_ptr&lt; Abstract_robot_element &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00003">log_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_a7c3305b339a0e539d60bd92d59f5c835"><div class="ttname"><a href="classLog__decorator.html#a7c3305b339a0e539d60bd92d59f5c835">Log_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00021">log_decorator.cpp:21</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_a9fdbd079b56b93f87a9b325397d9d57a"><div class="ttname"><a href="classLog__decorator.html#a9fdbd079b56b93f87a9b325397d9d57a">Log_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00015">log_decorator.cpp:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="arobot__element_2decorators_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html_ac31262be083a8b9f2105b7f0211db7d6"><div class="ttname"><a href="classLog__decorator.html#ac31262be083a8b9f2105b7f0211db7d6">Log_decorator::input_filter</a></div><div class="ttdeci">void input_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8cpp_source.html#l00009">log_decorator.cpp:9</a></div></div>
+<div class="ttc" id="aclassLog__decorator_html"><div class="ttname"><a href="classLog__decorator.html">Log_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="log__decorator_8h_source.html#l00008">log_decorator.h:8</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__loader_8cpp.html b/doc/html/map__loader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..b2d008d8fd8ad4615ba60b204ab7228fca234a96
--- /dev/null
+++ b/doc/html/map__loader_8cpp.html
@@ -0,0 +1,66 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_loader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_loader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="map__loader_8h_source.html">impl/map_loader.h</a>&quot;</code><br />
+<code>#include &lt;sstream&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for map_loader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__loader_8cpp__incl.png" border="0" usemap="#map__loader_8cpp" alt=""/></div>
+<map name="map__loader_8cpp" id="map__loader_8cpp">
+<area shape="rect" title=" " alt="" coords="550,5,676,32"/>
+<area shape="rect" href="map__loader_8h.html" title=" " alt="" coords="474,80,618,107"/>
+<area shape="rect" title=" " alt="" coords="642,80,717,107"/>
+<area shape="rect" title=" " alt="" coords="88,401,167,427"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="444,155,648,181"/>
+<area shape="rect" title=" " alt="" coords="673,155,732,181"/>
+<area shape="rect" title=" " alt="" coords="360,229,509,256"/>
+<area shape="rect" title=" " alt="" coords="418,401,616,427"/>
+<area shape="rect" title=" " alt="" coords="584,229,736,256"/>
+<area shape="rect" title=" " alt="" coords="760,229,892,256"/>
+<area shape="rect" title=" " alt="" coords="916,229,1059,256"/>
+<area shape="rect" title=" " alt="" coords="1083,229,1196,256"/>
+<area shape="rect" title=" " alt="" coords="1220,229,1352,256"/>
+<area shape="rect" title=" " alt="" coords="1376,229,1450,256"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="174,229,335,256"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="38,311,217,338"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="292,304,441,345"/>
+<area shape="rect" title=" " alt="" coords="246,393,393,435"/>
+</map>
+</div>
+</div>
+<p><a href="map__loader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__loader_8cpp__incl.map b/doc/html/map__loader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..0d800619e2092eea37aad492cdb8aaa553b96f1c
--- /dev/null
+++ b/doc/html/map__loader_8cpp__incl.map
@@ -0,0 +1,20 @@
+<map id="map_loader.cpp" name="map_loader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="550,5,676,32"/>
+<area shape="rect" id="node2" href="$map__loader_8h.html" title=" " alt="" coords="474,80,618,107"/>
+<area shape="rect" id="node18" title=" " alt="" coords="642,80,717,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="88,401,167,427"/>
+<area shape="rect" id="node4" href="$abstract__map__loader_8h.html" title=" " alt="" coords="444,155,648,181"/>
+<area shape="rect" id="node17" title=" " alt="" coords="673,155,732,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="360,229,509,256"/>
+<area shape="rect" id="node6" title=" " alt="" coords="418,401,616,427"/>
+<area shape="rect" id="node7" title=" " alt="" coords="584,229,736,256"/>
+<area shape="rect" id="node8" title=" " alt="" coords="760,229,892,256"/>
+<area shape="rect" id="node9" title=" " alt="" coords="916,229,1059,256"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1083,229,1196,256"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1220,229,1352,256"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1376,229,1450,256"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="174,229,335,256"/>
+<area shape="rect" id="node14" href="$abstract__strategy_8h.html" title=" " alt="" coords="38,311,217,338"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="292,304,441,345"/>
+<area shape="rect" id="node16" title=" " alt="" coords="246,393,393,435"/>
+</map>
diff --git a/doc/html/map__loader_8cpp__incl.md5 b/doc/html/map__loader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..aefb8ac7ad67a2dcfe4d002d99bb418b9019d7bf
--- /dev/null
+++ b/doc/html/map__loader_8cpp__incl.md5
@@ -0,0 +1 @@
+b14753a1ce97abd0cc1df0303d504893
\ No newline at end of file
diff --git a/doc/html/map__loader_8cpp__incl.png b/doc/html/map__loader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..9ddb9b85a98143d31481f6d2a9b009d23e0ba8a2
Binary files /dev/null and b/doc/html/map__loader_8cpp__incl.png differ
diff --git a/doc/html/map__loader_8cpp_source.html b/doc/html/map__loader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3faa8944a6b1f8d60cfc399046760979631c3354
--- /dev/null
+++ b/doc/html/map__loader_8cpp_source.html
@@ -0,0 +1,448 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_loader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_loader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="map__loader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__loader_8h.html">impl/map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;sstream&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno"><a class="line" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">    5</a></span>&#160;<a class="code" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader::Map_loader</a>(XmlRpc::XmlRpcValue&amp; map, XmlRpc::XmlRpcValue&amp; task){</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    std::regex reg(<span class="stringliteral">&quot;\\s+&quot;</span>);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::vector&lt;tf2::Transform&gt; _map;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;load [map] data...&quot;</span>);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>.size();i++){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        std::string str = <a class="code" href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">map</a>[i];</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        std::sregex_token_iterator to_it(str.begin(), str.end(),reg,-1);</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        std::vector&lt;std::string&gt; temp{to_it, {}};</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        tf2::Vector3 t(std::stof(temp[0]), std::stof(temp[1]), std::stof(temp[2]));</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        tf2::Quaternion so(std::stof(temp[3]), std::stof(temp[4]), std::stof(temp[5]), std::stof(temp[6]));</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        _map.push_back(tf2::Transform(so.normalize(),t));</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    }</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    this-&gt;<a class="code" href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">set_map</a>(_map);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;[map] saved with %li entries...&quot;</span>, _map.size());</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;saving [target] positions...&quot;</span>);</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; task_;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keywordflow">for</span>(XmlRpc::XmlRpcValue::ValueStruct::const_iterator it = task.begin(); it != task.end(); ++it){</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        std::vector&lt;tf2::Transform&gt; task_per_robot;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; it-&gt;second.size(); i++){</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            std::string str = it-&gt;second[i];</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;            std::sregex_token_iterator to_it(str.begin(), str.end(),reg,-1);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            std::vector&lt;std::string&gt; temp{to_it, {}};</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            task_per_robot.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(std::stof(temp[0]), std::stof(temp[1]), std::stof(temp[2]))));</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        } </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        task_.push_back(task_per_robot);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    }</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    this-&gt;<a class="code" href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">set_task_grasps</a>(task_);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; task_.size(); i++) ROS_INFO(<span class="stringliteral">&quot;[target] for Robot %li saved with %li entries...&quot;</span>, i, task_[i].size());</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;}</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">   39</a></span>&#160;std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader::base_calculation</a>(){</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;calculating target orientation basic set...&quot;</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    std::vector&lt;tf2::Quaternion&gt; basic_rot;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    tf2::Quaternion x_rot(0,0,0,1);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    tf2::Quaternion y_rot(0,0,0.707,0.707);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    tf2::Quaternion z_rot(0,-0.707,0,0.707);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    basic_rot.push_back(x_rot.normalize());</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    basic_rot.push_back(x_rot.inverse().normalize());</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    basic_rot.push_back(y_rot.normalize());</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    basic_rot.push_back(y_rot.inverse().normalize());</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    basic_rot.push_back(z_rot.inverse().normalize());</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    std::vector&lt;std::vector&lt;std::vector&lt;tf2::Quaternion&gt;&gt;&gt; target_orientation_grasps;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>.size(); i++) {</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        std::vector&lt;std::vector&lt;tf2::Quaternion&gt;&gt; quat;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>[i].size(); j++) {</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;            quat.push_back(basic_rot);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        }</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        target_orientation_grasps.push_back(quat);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    }</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">target_rot_</a>= target_orientation_grasps;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;basic set registered...&quot;</span>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a>-&gt;<a class="code" href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">inv_map_creation</a>(<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;init voxel...&quot;</span>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; voxelization = this-&gt;<a class="code" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">create_pcl_box</a>();</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    std::vector&lt;std::vector&lt;std::vector&lt;int&gt;&gt;&gt; base_target_map;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    base_target_map.resize(<a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>.size());</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; base_target_map.size();i++) base_target_map[i].resize(voxelization.size());</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;forming base clouds...&quot;</span>);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <a class="code" href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">strategy_</a>-&gt;<a class="code" href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">cloud_calculation</a>(<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="comment">// OpenMP </span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;start cloud quantization...&quot;</span>);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a>.size();i++){</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; <a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a>[i].size();j++){</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            pcl::octree::OctreePointCloudSearch&lt;pcl::PointXYZ&gt; octree(0.2f);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;            octree.setInputCloud(<a class="code" href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">target_cloud_</a>[i][j]);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;            octree.addPointsFromInputCloud();</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;            <span class="keywordtype">double</span> min_x, min_y, min_z, max_x, max_y, max_z;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;            octree.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> k = 0; k &lt; voxelization.size(); k++) {</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                pcl::PointXYZ p = voxelization[k];</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                <span class="keywordtype">bool</span> isInBox = (p.x &gt;= min_x &amp;&amp; p.x &lt;= max_x) &amp;&amp; (p.y &gt;= min_y &amp;&amp; p.y &lt;= max_y) &amp;&amp; (p.z &gt;= min_z &amp;&amp; p.z &lt;= max_z);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                <span class="keywordflow">if</span>(isInBox &amp;&amp; octree.isVoxelOccupiedAtPoint(p)) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                    std::vector&lt; int &gt; pointIdxVec;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                    <span class="keywordflow">if</span>(octree.voxelSearch(p, pointIdxVec)) <span class="keywordflow">if</span>(!pointIdxVec.empty()) base_target_map[i][k].push_back(j);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                }</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            }</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        }</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; resulting;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; base_target_map.size(); i++) {</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        std::vector&lt;pcl::PointXYZ&gt; points_per_robot;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt; base_target_map[i].size(); j++){</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;            <span class="keywordflow">if</span> (base_target_map[i][j].size() == <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>[i].size()) {</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                points_per_robot.push_back(voxelization[j]);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;            }</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        }</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="keywordflow">if</span> (!points_per_robot.empty()) resulting.push_back(points_per_robot);</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    }</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; resulting.size(); i++) {</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;Robot %li got %li base positions to ckeck&quot;</span>, i, resulting[i].size());</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    }</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordflow">return</span> resulting;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;}</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160; </div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">  116</a></span>&#160;std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">Abstract_map_loader::create_pcl_box</a>(){</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    tf2::Vector3 origin(0,0,0);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <span class="keywordtype">float</span> resolution = 0.4f;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordtype">float</span> diameter = 3.0f;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> depth = 16;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; box; </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    octomap::OcTree* tree = <span class="keyword">new</span> octomap::OcTree(resolution/2);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">float</span> x = origin.getX() - diameter * 5 ; x &lt;= origin.getX() + diameter * 5 ; x += resolution){</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">float</span> y = origin.getY() - diameter * 5 ; y &lt;= origin.getY() + diameter * 5 ; y += resolution){</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">float</span> z = origin.getZ() - diameter * 1.5 ; z &lt;= origin.getZ() + diameter * 1.5 ; z += resolution){</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                octomap::point3d point(x,y,z);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                tree-&gt;updateNode(point, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;            }</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        }</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    }</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="keywordflow">for</span> (octomap::OcTree::leaf_iterator it = tree-&gt;begin_leafs(depth), end = tree-&gt;end_leafs(); it != end; ++it){</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        pcl::PointXYZ searchPoint(it.getCoordinate().x(), it.getCoordinate().y(), it.getCoordinate().z());</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        box.push_back(searchPoint);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    }</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160; </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="keywordflow">return</span> box;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;}</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">  140</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader::write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot){</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    std::ofstream o(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/mtc_task_file/dummy.yaml&quot;</span>);</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    tf2::Transform target_start = <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>[0].front();</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    tf2::Transform target_end = <a class="code" href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">task_grasps_</a>[0].back();</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    <span class="keywordtype">float</span> x, y, z;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    x = target_end.getOrigin().getX();</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    y = target_end.getOrigin().getY();</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    z = target_end.getOrigin().getZ();</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;hand_&quot;</span> &lt;&lt; robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back();</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    std::string hand = ss.str();</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    std::stringstream sss;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    sss &lt;&lt; <span class="stringliteral">&quot;panda_&quot;</span> &lt;&lt; robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_link8&quot;</span>;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    std::string last_link = sss.str();</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160; </div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    YAML::Node node;</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    <span class="comment">//YAML::Comment(&quot;yaml-language-server: $schema=/home/matteo/reachability/src/yaml_to_mtc/config/yaml_to_mtc_schema.json&quot;);</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    YAML::Node planner_node;</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    planner_node[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;cartesian&quot;</span>;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    planner_node[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;CartesianPath&quot;</span>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    node[<span class="stringliteral">&quot;planners&quot;</span>].push_back(planner_node);</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    planner_node.reset();</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    planner_node[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    planner_node[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;PipelinePlanner&quot;</span>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    planner_node[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;step_size&quot;</span>] = 0.005f;</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    planner_node[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;goal_joint_tolerance&quot;</span>] = <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(0.00001f);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    node[<span class="stringliteral">&quot;planners&quot;</span>].push_back(planner_node);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    planner_node.reset();</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160; </div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    planner_node[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;interpolation&quot;</span>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    planner_node[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;JointInterpolationPlanner&quot;</span>;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    node[<span class="stringliteral">&quot;planners&quot;</span>].push_back(planner_node);</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    planner_node.reset();</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160; </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;Pick and Place test&quot;</span>;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;group&quot;</span>] = robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>();</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;eef&quot;</span>] = hand;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;hand_grasping_frame&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;hand&quot;</span>] = hand;</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    YAML::Node stage;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    stage[<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;current&quot;</span>;</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;CurrentState&quot;</span>;</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160; </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    stage[<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;move to ready&quot;</span>;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;   </div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    stage[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;ready&quot;</span>;   </div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>].push_back(<span class="stringliteral">&quot;group&quot;</span>);</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;ready&quot;</span>;</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160; </div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;   </div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;  </div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    stage[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;hand_open&quot;</span>;  </div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;group&quot;</span>] = hand; </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;open&quot;</span>;  </div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160; </div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;Connect&quot;</span>;   </div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    stage[<span class="stringliteral">&quot;group_planner_vector&quot;</span>][robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()] = <span class="stringliteral">&quot;sampling&quot;</span>; </div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>; </div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160; </div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;SerialContainer&quot;</span>;</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    stage[<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;grasp&quot;</span>;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    stage[<span class="stringliteral">&quot;properties_exposeTo&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;task&quot;</span>;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    stage[<span class="stringliteral">&quot;properties_exposeTo&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[eef, hand, group, ik_frame]&quot;</span>);</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[eef, hand, group, ik_frame]&quot;</span>);</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="comment">//node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160; </div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    YAML::Node stage_in_stage;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveRelative&quot;</span>;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;cartesian&quot;</span>;</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.07f;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2f;</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[group]&quot;</span>);</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{x: 0.0, y: 0.0, z: 1.0, header: { frame_id: &quot;</span> + last_link +<span class="stringliteral">&quot; }}&quot;</span>);</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;    stage_in_stage.reset();</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160; </div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;ComputeIK&quot;</span>;</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{max_ik_solutions: 5}&quot;</span>);</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;isometry&quot;</span>][<span class="stringliteral">&quot;translation&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: 0.1, y: 0.0, z: 0.0 }&quot;</span>);</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;isometry&quot;</span>][<span class="stringliteral">&quot;quaternion&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ r: 1.571, p: 0.785, y: 1.571 }&quot;</span>);</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160; </div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    YAML::Node properties_in_stage_in_stage;</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;source&quot;</span>]= <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;values&quot;</span>]= YAML::Load(<span class="stringliteral">&quot;[eef, group]&quot;</span>);</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>].push_back(properties_in_stage_in_stage);</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    properties_in_stage_in_stage.reset();</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;source&quot;</span>]= <span class="stringliteral">&quot;INTERFACE&quot;</span>;</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;values&quot;</span>]= YAML::Load(<span class="stringliteral">&quot;[target_pose]&quot;</span>);</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>].push_back(properties_in_stage_in_stage);</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    properties_in_stage_in_stage.reset();</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160; </div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;GenerateGraspPose&quot;</span>;</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;object&quot;</span>] = <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;angle_delta&quot;</span>] = 1.571f;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;pregrasp&quot;</span>] = <span class="stringliteral">&quot;open&quot;</span>;</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;monitored_stage&quot;</span>] = <span class="stringliteral">&quot;ready&quot;</span>;</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    stage_in_stage.reset();</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160; </div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;ModifyPlanningScene&quot;</span>;</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>][<span class="stringliteral">&quot;joint_model_group_name&quot;</span>] = hand;</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;allow&quot;</span>] = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    stage_in_stage.reset();</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160; </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;group&quot;</span>] = hand;</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;close&quot;</span>;</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    stage_in_stage.reset();   </div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160; </div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;ModifyPlanningScene&quot;</span>;</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;attach_object&quot;</span>][<span class="stringliteral">&quot;object&quot;</span>] = <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;attach_object&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    stage_in_stage.reset();  </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160; </div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveRelative&quot;</span>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;cartesian&quot;</span>;</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;id&quot;</span>] = <span class="stringliteral">&quot;pick_up&quot;</span>;</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[group]&quot;</span>);</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.1f;</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2f;</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: 0.0, y: 0.0, z: 1.0 }&quot;</span>);</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    stage_in_stage.reset();  </div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160; </div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;Connect&quot;</span>;</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    stage[<span class="stringliteral">&quot;group_planner_vector&quot;</span>][robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    stage.reset();</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    <span class="comment">// satrtet here </span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;SerialContainer&quot;</span>;</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    stage[<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;place&quot;</span>;</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    stage[<span class="stringliteral">&quot;properties_exposeTo&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;task&quot;</span>;</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    stage[<span class="stringliteral">&quot;properties_exposeTo&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[eef, hand, group, ik_frame]&quot;</span>);</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160; </div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveRelative&quot;</span>;</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;cartesian&quot;</span>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.1f;</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2f;</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[group]&quot;</span>);</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: 0.0, y: 0.0, z: -1.0}&quot;</span>);</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    stage_in_stage.reset(); </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160; </div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;ComputeIK&quot;</span>;</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ max_ik_solutions: 5 }&quot;</span>);</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;isometry&quot;</span>][<span class="stringliteral">&quot;translation&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: 0.1, y: 0.0, z: 0.0 }&quot;</span>);</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;isometry&quot;</span>][<span class="stringliteral">&quot;quaternion&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ r: 1.571, p: 0.785, y: 1.571 }&quot;</span>);</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160; </div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;source&quot;</span>]= <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;values&quot;</span>]= YAML::Load(<span class="stringliteral">&quot;[eef, group]&quot;</span>);</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>].push_back(properties_in_stage_in_stage);</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    properties_in_stage_in_stage.reset();</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160; </div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;source&quot;</span>]= <span class="stringliteral">&quot;INTERFACE&quot;</span>;</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    properties_in_stage_in_stage[<span class="stringliteral">&quot;values&quot;</span>]= YAML::Load(<span class="stringliteral">&quot;[target_pose]&quot;</span>);</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>].push_back(properties_in_stage_in_stage);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    properties_in_stage_in_stage.reset();</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160; </div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;GeneratePose&quot;</span>;</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;monitored_stage&quot;</span>] = <span class="stringliteral">&quot;pick_up&quot;</span>;</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;pose&quot;</span>][<span class="stringliteral">&quot;point&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: &quot;</span> + std::to_string(x) + <span class="stringliteral">&quot;, y: &quot;</span> + std::to_string(y) + <span class="stringliteral">&quot;, z: 0.9305 }&quot;</span>); <span class="comment">// Hier objekt</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;pose&quot;</span>][<span class="stringliteral">&quot;orientation&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{ x: 0.0, y: 0.0, z: 0.0, w: 1.0}&quot;</span>);</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    stage_in_stage.reset(); </div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160; </div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;group&quot;</span>] = hand;</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;open&quot;</span>;</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    stage_in_stage.reset(); </div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160; </div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;ModifyPlanningScene&quot;</span>;</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;detach_object&quot;</span>][<span class="stringliteral">&quot;object&quot;</span>]= <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;detach_object&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>]= last_link;</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>]= <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>][<span class="stringliteral">&quot;joint_model_group_name&quot;</span>]= hand;</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;allow&quot;</span>] = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    stage_in_stage.reset(); </div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160; </div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveRelative&quot;</span>;</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;cartesian&quot;</span>;</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = last_link;</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.07f;</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2f;</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;[group]&quot;</span>);</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>] = YAML::Load(<span class="stringliteral">&quot;{x: 0.0, y: 0.0, z: -1.0, header:  { frame_id: &quot;</span> + last_link+ <span class="stringliteral">&quot; }}&quot;</span>);</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    stage_in_stage.reset(); </div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160; </div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;group&quot;</span>] = hand;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;close&quot;</span>;</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    stage_in_stage.reset();    </div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160; </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;name&quot;</span>] = <span class="stringliteral">&quot;move to ready&quot;</span>;</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;MoveTo&quot;</span>;</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;planner&quot;</span>] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;source&quot;</span>]= <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>][<span class="stringliteral">&quot;values&quot;</span>].push_back(<span class="stringliteral">&quot;group&quot;</span>);</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    stage_in_stage[<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;goal&quot;</span>] = <span class="stringliteral">&quot;ready&quot;</span>;</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    stage[<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage_in_stage);</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    stage_in_stage.reset();    </div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;stages&quot;</span>].push_back(stage);</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    stage.reset();  </div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160; </div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    node[<span class="stringliteral">&quot;max_planning_solutions&quot;</span>] = 10;</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    o &lt;&lt; node;</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;    o.close();</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160; </div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;}</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__map__loader_html_a8c4bd31f9c778a3a5ef7a21ab16f6127"><div class="ttname"><a href="classAbstract__map__loader.html#a8c4bd31f9c778a3a5ef7a21ab16f6127">Abstract_map_loader::task_grasps_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; task_grasps_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00028">abstract_map_loader.h:28</a></div></div>
+<div class="ttc" id="aclassMap__loader_html_a40cb9325cf9975bd8204abfbd7c599b8"><div class="ttname"><a href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader::Map_loader</a></div><div class="ttdeci">Map_loader(XmlRpc::XmlRpcValue &amp;map_data, XmlRpc::XmlRpcValue &amp;target_data)</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00005">map_loader.cpp:5</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_aab0898959888bc50f37690808f9571a8"><div class="ttname"><a href="classAbstract__map__loader.html#aab0898959888bc50f37690808f9571a8">Abstract_map_loader::target_cloud_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr &gt; &gt; target_cloud_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00030">abstract_map_loader.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__strategy_html_a20c07f343817632f5f946fdb7734159f"><div class="ttname"><a href="classAbstract__strategy.html#a20c07f343817632f5f946fdb7734159f">Abstract_strategy::inv_map_creation</a></div><div class="ttdeci">virtual void inv_map_creation(Abstract_map_loader *var)=0</div></div>
+<div class="ttc" id="aclassMap__loader_html_ac8f429fe039a03dd69505fe899f37310"><div class="ttname"><a href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader::base_calculation</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation() override</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00039">map_loader.cpp:39</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a797587fa281f28fde814a052396d90bf"><div class="ttname"><a href="classAbstract__map__loader.html#a797587fa281f28fde814a052396d90bf">Abstract_map_loader::create_pcl_box</a></div><div class="ttdeci">static std::vector&lt; pcl::PointXYZ &gt; create_pcl_box()</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00116">map_loader.cpp:116</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_ab738d6d84071f7b931e2373a7fefc498"><div class="ttname"><a href="classAbstract__map__loader.html#ab738d6d84071f7b931e2373a7fefc498">Abstract_map_loader::set_task_grasps</a></div><div class="ttdeci">void set_task_grasps(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; &amp;lists_in_list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00045">abstract_map_loader.h:45</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_af012c7a4a222097864cbcda7ed58212f"><div class="ttname"><a href="classAbstract__map__loader.html#af012c7a4a222097864cbcda7ed58212f">Abstract_map_loader::target_rot_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Quaternion &gt; &gt; &gt; target_rot_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00029">abstract_map_loader.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__strategy_html_acfa25fc51d61ef553f5b588732d67335"><div class="ttname"><a href="classAbstract__strategy.html#acfa25fc51d61ef553f5b588732d67335">Abstract_strategy::cloud_calculation</a></div><div class="ttdeci">virtual void cloud_calculation(Abstract_map_loader *var)=0</div></div>
+<div class="ttc" id="aclassMap__loader_html_aa1fc661c7d1d19a0c1e408a89d31d69b"><div class="ttname"><a href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader::write_task</a></div><div class="ttdeci">void write_task(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00140">map_loader.cpp:140</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a13fb2cd6ac1a353192161e053426d7c8"><div class="ttname"><a href="classAbstract__map__loader.html#a13fb2cd6ac1a353192161e053426d7c8">Abstract_map_loader::map</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00042">abstract_map_loader.h:42</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="amap__loader_8h_html"><div class="ttname"><a href="map__loader_8h.html">map_loader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a1edc00738184b6aa4b245727c8ed52ec"><div class="ttname"><a href="classAbstract__map__loader.html#a1edc00738184b6aa4b245727c8ed52ec">Abstract_map_loader::set_map</a></div><div class="ttdeci">void set_map(std::vector&lt; tf2::Transform &gt; &amp;list)</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00044">abstract_map_loader.h:44</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html_a18cb3dcb65ee0af86bff355c24814dc3"><div class="ttname"><a href="classAbstract__map__loader.html#a18cb3dcb65ee0af86bff355c24814dc3">Abstract_map_loader::strategy_</a></div><div class="ttdeci">Abstract_strategy * strategy_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00032">abstract_map_loader.h:32</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__loader_8h.html b/doc/html/map__loader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..1bdedea0d74da33476f61848ed33242f5e415afd
--- /dev/null
+++ b/doc/html/map__loader_8h.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_loader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">map_loader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__map__loader_8h_source.html">impl/abstract_map_loader.h</a>&quot;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for map_loader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__loader_8h__incl.png" border="0" usemap="#map__loader_8h" alt=""/></div>
+<map name="map__loader_8h" id="map__loader_8h">
+<area shape="rect" title=" " alt="" coords="491,5,602,32"/>
+<area shape="rect" title=" " alt="" coords="88,326,167,353"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="444,80,648,107"/>
+<area shape="rect" title=" " alt="" coords="673,80,732,107"/>
+<area shape="rect" title=" " alt="" coords="360,155,509,181"/>
+<area shape="rect" title=" " alt="" coords="418,326,616,353"/>
+<area shape="rect" title=" " alt="" coords="584,155,736,181"/>
+<area shape="rect" title=" " alt="" coords="760,155,892,181"/>
+<area shape="rect" title=" " alt="" coords="916,155,1059,181"/>
+<area shape="rect" title=" " alt="" coords="1083,155,1196,181"/>
+<area shape="rect" title=" " alt="" coords="1220,155,1352,181"/>
+<area shape="rect" title=" " alt="" coords="1376,155,1450,181"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="174,155,335,181"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="38,237,217,263"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="292,229,441,271"/>
+<area shape="rect" title=" " alt="" coords="246,319,393,360"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__loader_8h__dep__incl.png" border="0" usemap="#map__loader_8hdep" alt=""/></div>
+<map name="map__loader_8hdep" id="map__loader_8hdep">
+<area shape="rect" title=" " alt="" coords="255,5,366,32"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="163,80,288,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="312,80,480,107"/>
+<area shape="rect" href="map__loader_8cpp.html" title=" " alt="" coords="505,80,631,107"/>
+</map>
+</div>
+</div>
+<p><a href="map__loader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__loader.html">Map_loader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__loader_8h__dep__incl.map b/doc/html/map__loader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..469f42827c62dada01e0d17571f3b436c069e4f0
--- /dev/null
+++ b/doc/html/map__loader_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="map_loader.h" name="map_loader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="255,5,366,32"/>
+<area shape="rect" id="node2" href="$base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" id="node3" href="$cell__routine_8cpp.html" title=" " alt="" coords="163,80,288,107"/>
+<area shape="rect" id="node4" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="312,80,480,107"/>
+<area shape="rect" id="node5" href="$map__loader_8cpp.html" title=" " alt="" coords="505,80,631,107"/>
+</map>
diff --git a/doc/html/map__loader_8h__dep__incl.md5 b/doc/html/map__loader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9cbb2a6f3ff29362c3b82d8310c455b9cd52bb8a
--- /dev/null
+++ b/doc/html/map__loader_8h__dep__incl.md5
@@ -0,0 +1 @@
+6a2d2744feefdcd86a8b981ddf868b43
\ No newline at end of file
diff --git a/doc/html/map__loader_8h__dep__incl.png b/doc/html/map__loader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..3ba8e6fdf50c29a27bd3a40797df18ee2a280387
Binary files /dev/null and b/doc/html/map__loader_8h__dep__incl.png differ
diff --git a/doc/html/map__loader_8h__incl.map b/doc/html/map__loader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b66bd57530901812b0eb70e20874d0ee02535a65
--- /dev/null
+++ b/doc/html/map__loader_8h__incl.map
@@ -0,0 +1,18 @@
+<map id="map_loader.h" name="map_loader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="491,5,602,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="88,326,167,353"/>
+<area shape="rect" id="node3" href="$abstract__map__loader_8h.html" title=" " alt="" coords="444,80,648,107"/>
+<area shape="rect" id="node16" title=" " alt="" coords="673,80,732,107"/>
+<area shape="rect" id="node4" title=" " alt="" coords="360,155,509,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="418,326,616,353"/>
+<area shape="rect" id="node6" title=" " alt="" coords="584,155,736,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="760,155,892,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="916,155,1059,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1083,155,1196,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1220,155,1352,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1376,155,1450,181"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="174,155,335,181"/>
+<area shape="rect" id="node13" href="$abstract__strategy_8h.html" title=" " alt="" coords="38,237,217,263"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="292,229,441,271"/>
+<area shape="rect" id="node15" title=" " alt="" coords="246,319,393,360"/>
+</map>
diff --git a/doc/html/map__loader_8h__incl.md5 b/doc/html/map__loader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..6fcc74cf810d17e97ee8ff9cd4df46ac51fc4c8c
--- /dev/null
+++ b/doc/html/map__loader_8h__incl.md5
@@ -0,0 +1 @@
+c9e432d306e8ce03a19bddbbacab3dd0
\ No newline at end of file
diff --git a/doc/html/map__loader_8h__incl.png b/doc/html/map__loader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..9e9bf8d76e4f7ae7c19c791737d0a005645b7fe2
Binary files /dev/null and b/doc/html/map__loader_8h__incl.png differ
diff --git a/doc/html/map__loader_8h_source.html b/doc/html/map__loader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..4256467fdb29eb2f4773edfdc62586a5dc6084b4
--- /dev/null
+++ b/doc/html/map__loader_8h_source.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_loader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_loader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="map__loader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MAP_LOADER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MAP_LOADER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__map__loader_8h.html">impl/abstract_map_loader.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classMap__loader.html">   10</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMap__loader.html">Map_loader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__map__loader.html">Abstract_map_loader</a> {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <a class="code" href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader</a>(XmlRpc::XmlRpcValue&amp; map_data, XmlRpc::XmlRpcValue&amp; target_data);</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">base_calculation</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;};</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMap__loader_html_a40cb9325cf9975bd8204abfbd7c599b8"><div class="ttname"><a href="classMap__loader.html#a40cb9325cf9975bd8204abfbd7c599b8">Map_loader::Map_loader</a></div><div class="ttdeci">Map_loader(XmlRpc::XmlRpcValue &amp;map_data, XmlRpc::XmlRpcValue &amp;target_data)</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00005">map_loader.cpp:5</a></div></div>
+<div class="ttc" id="aclassMap__loader_html_ac8f429fe039a03dd69505fe899f37310"><div class="ttname"><a href="classMap__loader.html#ac8f429fe039a03dd69505fe899f37310">Map_loader::base_calculation</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation() override</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00039">map_loader.cpp:39</a></div></div>
+<div class="ttc" id="aabstract__map__loader_8h_html"><div class="ttname"><a href="abstract__map__loader_8h.html">abstract_map_loader.h</a></div></div>
+<div class="ttc" id="aclassMap__loader_html_aa1fc661c7d1d19a0c1e408a89d31d69b"><div class="ttname"><a href="classMap__loader.html#aa1fc661c7d1d19a0c1e408a89d31d69b">Map_loader::write_task</a></div><div class="ttdeci">void write_task(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8cpp_source.html#l00140">map_loader.cpp:140</a></div></div>
+<div class="ttc" id="aclassAbstract__map__loader_html"><div class="ttname"><a href="classAbstract__map__loader.html">Abstract_map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__map__loader_8h_source.html#l00024">abstract_map_loader.h:24</a></div></div>
+<div class="ttc" id="aclassMap__loader_html"><div class="ttname"><a href="classMap__loader.html">Map_loader</a></div><div class="ttdef"><b>Definition:</b> <a href="map__loader_8h_source.html#l00010">map_loader.h:10</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__reader_8cpp.html b/doc/html/map__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..2fb9b76165a5e7ae9b9077d9a08a5909a32c00bd
--- /dev/null
+++ b/doc/html/map__reader_8cpp.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="map__reader_8h_source.html">reader/map_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for map_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__reader_8cpp__incl.png" border="0" usemap="#map__reader_8cpp" alt=""/></div>
+<map name="map__reader_8cpp" id="map__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="199,5,325,32"/>
+<area shape="rect" href="map__reader_8h.html" title=" " alt="" coords="183,80,341,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="map__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__reader_8cpp__incl.map b/doc/html/map__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..86d25384fafc94fad66d7b6c4d0367c2718c95b3
--- /dev/null
+++ b/doc/html/map__reader_8cpp__incl.map
@@ -0,0 +1,13 @@
+<map id="map_reader.cpp" name="map_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="199,5,325,32"/>
+<area shape="rect" id="node2" href="$map__reader_8h.html" title=" " alt="" coords="183,80,341,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/map__reader_8cpp__incl.md5 b/doc/html/map__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8650d671e6eb34f9541e675eec23a34a8f0309ee
--- /dev/null
+++ b/doc/html/map__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+ecd2f5aaef1c3bf5f653972cb241450a
\ No newline at end of file
diff --git a/doc/html/map__reader_8cpp__incl.png b/doc/html/map__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1486f926dcb3a04d081f0840925eafaef208d742
Binary files /dev/null and b/doc/html/map__reader_8cpp__incl.png differ
diff --git a/doc/html/map__reader_8cpp_source.html b/doc/html/map__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2bb4ebc0f234abc1db56831ad3f73a4237f5eb14
--- /dev/null
+++ b/doc/html/map__reader_8cpp_source.html
@@ -0,0 +1,69 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="map__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__reader_8h.html">reader/map_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader::read</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/data&quot;</span>, resources);</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a>;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- MAP_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        tf2::Vector3 pos;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        tf2::Quaternion rot;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        <a class="code" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a>.push_back(tf2::Transform(rot, pos));</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    }</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <a class="code" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">set_map_data</a>(<a class="code" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a>);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="amap__reader_8h_html"><div class="ttname"><a href="map__reader_8h.html">map_reader.h</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a91deab19bee09cfa5174fdb159972fe3"><div class="ttname"><a href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8cpp_source.html#l00003">map_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a31bfd513f89c1b196f2616df5e64611c"><div class="ttname"><a href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">Map_reader::map_data</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map_data()</div><div class="ttdoc">Get map_data.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00037">map_reader.h:37</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a6f6a52aa711ebdeb6bc8714b18679af6"><div class="ttname"><a href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">Map_reader::set_map_data</a></div><div class="ttdeci">void set_map_data(std::vector&lt; tf2::Transform &gt; &amp;robot_data)</div><div class="ttdoc">Set map_data.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00031">map_reader.h:31</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__reader_8h.html b/doc/html/map__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..70d673efdf6b2af564017b74cf5862cae6fa4053
--- /dev/null
+++ b/doc/html/map__reader_8h.html
@@ -0,0 +1,81 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">map_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for map_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__reader_8h__incl.png" border="0" usemap="#map__reader_8h" alt=""/></div>
+<map name="map__reader_8h" id="map__reader_8h">
+<area shape="rect" title=" " alt="" coords="206,5,318,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="map__reader_8h__dep__incl.png" border="0" usemap="#map__reader_8hdep" alt=""/></div>
+<map name="map__reader_8hdep" id="map__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="175,5,287,32"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="101,80,217,107"/>
+<area shape="rect" href="map__reader_8cpp.html" title=" " alt="" coords="241,80,367,107"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="5,162,136,189"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="161,155,333,196"/>
+</map>
+</div>
+</div>
+<p><a href="map__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMap__reader.html">Map_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Map reader.  <a href="classMap__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/map__reader_8h__dep__incl.map b/doc/html/map__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..56f9e20d3e3bd946c1a7f08839a8b6a35199377a
--- /dev/null
+++ b/doc/html/map__reader_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="map_reader.h" name="map_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="175,5,287,32"/>
+<area shape="rect" id="node2" href="$simple__base_8h.html" title=" " alt="" coords="101,80,217,107"/>
+<area shape="rect" id="node5" href="$map__reader_8cpp.html" title=" " alt="" coords="241,80,367,107"/>
+<area shape="rect" id="node3" href="$simple__base_8cpp.html" title=" " alt="" coords="5,162,136,189"/>
+<area shape="rect" id="node4" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="161,155,333,196"/>
+</map>
diff --git a/doc/html/map__reader_8h__dep__incl.md5 b/doc/html/map__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0ad7f7cca8b2085515758129a1c4a4ff4f24c2bd
--- /dev/null
+++ b/doc/html/map__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+0f2e2235d413321f4d832f8a86408567
\ No newline at end of file
diff --git a/doc/html/map__reader_8h__dep__incl.png b/doc/html/map__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..18a2f329d64e7ddf2ca4b9042b7dc44d1dcc7aa1
Binary files /dev/null and b/doc/html/map__reader_8h__dep__incl.png differ
diff --git a/doc/html/map__reader_8h__incl.map b/doc/html/map__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..897ba3e608b5d0712ec81ac3c41d3521646557a1
--- /dev/null
+++ b/doc/html/map__reader_8h__incl.map
@@ -0,0 +1,12 @@
+<map id="map_reader.h" name="map_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="206,5,318,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/map__reader_8h__incl.md5 b/doc/html/map__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..5abbc7ccde6a43ea238a0549b59c907471e2cfc1
--- /dev/null
+++ b/doc/html/map__reader_8h__incl.md5
@@ -0,0 +1 @@
+dc9184fdcf056399d8047f1934f9dc07
\ No newline at end of file
diff --git a/doc/html/map__reader_8h__incl.png b/doc/html/map__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..cf4c178bd398bc2d00ba23a7a239ba77c10da784
Binary files /dev/null and b/doc/html/map__reader_8h__incl.png differ
diff --git a/doc/html/map__reader_8h_source.html b/doc/html/map__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ab1c3cc8b69e086671407110aa73787b6989be81
--- /dev/null
+++ b/doc/html/map__reader_8h_source.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: map_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">map_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="map__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MAP_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MAP_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classMap__reader.html">   15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMap__reader.html">Map_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">   17</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">map_data_</a>; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">   25</a></span>&#160;    <a class="code" href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">read</a>();}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">   31</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">set_map_data</a>(std::vector&lt;tf2::Transform&gt;&amp; robot_data) {<a class="code" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">map_data_</a> = robot_data;}</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">   37</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">map_data</a>() {<span class="keywordflow">return</span> <a class="code" href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">map_data_</a>;}</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;};</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMap__reader_html_a651a31b2d8120523590a7d9707d5b4b5"><div class="ttname"><a href="classMap__reader.html#a651a31b2d8120523590a7d9707d5b4b5">Map_reader::Map_reader</a></div><div class="ttdeci">Map_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Map reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00025">map_reader.h:25</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a91deab19bee09cfa5174fdb159972fe3"><div class="ttname"><a href="classMap__reader.html#a91deab19bee09cfa5174fdb159972fe3">Map_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8cpp_source.html#l00003">map_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassMap__reader_html"><div class="ttname"><a href="classMap__reader.html">Map_reader</a></div><div class="ttdoc">Map reader.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00015">map_reader.h:15</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a31bfd513f89c1b196f2616df5e64611c"><div class="ttname"><a href="classMap__reader.html#a31bfd513f89c1b196f2616df5e64611c">Map_reader::map_data</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; map_data()</div><div class="ttdoc">Get map_data.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00037">map_reader.h:37</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_abfb159fe634aab941d493204be389fa9"><div class="ttname"><a href="classMap__reader.html#abfb159fe634aab941d493204be389fa9">Map_reader::map_data_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; map_data_</div><div class="ttdoc">Map transforms.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00017">map_reader.h:17</a></div></div>
+<div class="ttc" id="aclassMap__reader_html_a6f6a52aa711ebdeb6bc8714b18679af6"><div class="ttname"><a href="classMap__reader.html#a6f6a52aa711ebdeb6bc8714b18679af6">Map_reader::set_map_data</a></div><div class="ttdeci">void set_map_data(std::vector&lt; tf2::Transform &gt; &amp;robot_data)</div><div class="ttdoc">Set map_data.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00031">map_reader.h:31</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_2abstract__mediator_8cpp.html b/doc/html/mediator_2abstract__mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..6942aa19f7e21a71a4d090da00ba2469c693cb1e
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8cpp.html
@@ -0,0 +1,78 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator/abstract_mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for mediator/abstract_mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_2abstract__mediator_8cpp__incl.png" border="0" usemap="#abstract__mediator_8cpp" alt=""/></div>
+<map name="abstract__mediator_8cpp" id="abstract__mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="2977,5,3145,32"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2953,80,3169,107"/>
+<area shape="rect" title=" " alt="" coords="669,437,748,464"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="1850,155,2037,196"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="2316,259,2483,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="621,348,796,389"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1013,162,1151,189"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2806,162,2966,189"/>
+<area shape="rect" title=" " alt="" coords="3221,355,3335,382"/>
+<area shape="rect" title=" " alt="" coords="3359,355,3491,382"/>
+<area shape="rect" title=" " alt="" coords="3515,355,3588,382"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="2990,162,3131,189"/>
+<area shape="rect" title=" " alt="" coords="3423,162,3575,189"/>
+<area shape="rect" title=" " alt="" coords="3600,162,3732,189"/>
+<area shape="rect" title=" " alt="" coords="3756,162,3899,189"/>
+<area shape="rect" title=" " alt="" coords="2105,251,2291,293"/>
+<area shape="rect" title=" " alt="" coords="986,244,1178,300"/>
+<area shape="rect" title=" " alt="" coords="1202,251,1421,293"/>
+<area shape="rect" title=" " alt="" coords="1445,251,1652,293"/>
+<area shape="rect" title=" " alt="" coords="1676,244,1832,300"/>
+<area shape="rect" title=" " alt="" coords="1857,251,2030,293"/>
+<area shape="rect" title=" " alt="" coords="746,251,962,293"/>
+<area shape="rect" title=" " alt="" coords="2507,259,2697,285"/>
+<area shape="rect" title=" " alt="" coords="2543,437,2741,464"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="271,244,461,300"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="485,251,671,293"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="61,251,247,293"/>
+<area shape="rect" title=" " alt="" coords="2679,355,2829,382"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="2975,251,3146,293"/>
+<area shape="rect" title=" " alt="" coords="2903,355,2962,382"/>
+<area shape="rect" title=" " alt="" coords="2986,348,3146,389"/>
+</map>
+</div>
+</div>
+<p><a href="mediator_2abstract__mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_2abstract__mediator_8cpp__incl.map b/doc/html/mediator_2abstract__mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..89050267457c4c1b6f7339c77d2a13a01bc64821
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8cpp__incl.map
@@ -0,0 +1,33 @@
+<map id="abstract_mediator.cpp" name="abstract_mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2977,5,3145,32"/>
+<area shape="rect" id="node2" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="2953,80,3169,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="669,437,748,464"/>
+<area shape="rect" id="node4" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="1850,155,2037,196"/>
+<area shape="rect" id="node5" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="2316,259,2483,285"/>
+<area shape="rect" id="node7" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="621,348,796,389"/>
+<area shape="rect" id="node16" href="$ceti__robot_8h.html" title=" " alt="" coords="1013,162,1151,189"/>
+<area shape="rect" id="node20" href="$wing__reader_8h.html" title=" " alt="" coords="2806,162,2966,189"/>
+<area shape="rect" id="node21" title=" " alt="" coords="3221,355,3335,382"/>
+<area shape="rect" id="node24" title=" " alt="" coords="3359,355,3491,382"/>
+<area shape="rect" id="node25" title=" " alt="" coords="3515,355,3588,382"/>
+<area shape="rect" id="node28" href="$ts__reader_8h.html" title=" " alt="" coords="2990,162,3131,189"/>
+<area shape="rect" id="node29" title=" " alt="" coords="3423,162,3575,189"/>
+<area shape="rect" id="node30" title=" " alt="" coords="3600,162,3732,189"/>
+<area shape="rect" id="node31" title=" " alt="" coords="3756,162,3899,189"/>
+<area shape="rect" id="node8" title=" " alt="" coords="2105,251,2291,293"/>
+<area shape="rect" id="node9" title=" " alt="" coords="986,244,1178,300"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1202,251,1421,293"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1445,251,1652,293"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1676,244,1832,300"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1857,251,2030,293"/>
+<area shape="rect" id="node14" title=" " alt="" coords="746,251,962,293"/>
+<area shape="rect" id="node15" title=" " alt="" coords="2507,259,2697,285"/>
+<area shape="rect" id="node6" title=" " alt="" coords="2543,437,2741,464"/>
+<area shape="rect" id="node17" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="271,244,461,300"/>
+<area shape="rect" id="node18" href="$panel_8h.html" title=" " alt="" coords="485,251,671,293"/>
+<area shape="rect" id="node19" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="61,251,247,293"/>
+<area shape="rect" id="node22" title=" " alt="" coords="2679,355,2829,382"/>
+<area shape="rect" id="node23" href="$abstract__param__reader_8h.html" title=" " alt="" coords="2975,251,3146,293"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2903,355,2962,382"/>
+<area shape="rect" id="node27" title=" " alt="" coords="2986,348,3146,389"/>
+</map>
diff --git a/doc/html/mediator_2abstract__mediator_8cpp__incl.md5 b/doc/html/mediator_2abstract__mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0375035fea2e7b8d4fd0878e70c4f0a582284453
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+96932b3b87c4feb03a60e9edee5fde3c
\ No newline at end of file
diff --git a/doc/html/mediator_2abstract__mediator_8cpp__incl.png b/doc/html/mediator_2abstract__mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..681062031b8963a8d4661b21de949ed2693b55dd
Binary files /dev/null and b/doc/html/mediator_2abstract__mediator_8cpp__incl.png differ
diff --git a/doc/html/mediator_2abstract__mediator_8cpp_source.html b/doc/html/mediator_2abstract__mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..27601928e51dfc3ba31a5b34999ad9ddabd88e2a
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8cpp_source.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_0197a5d81791167ca90f243ba28e7f5e.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator/abstract_mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="mediator_2abstract__mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a724fb5c020cca45732464f0227c854b6">    3</a></span>&#160;<a class="code" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator::Abstract_mediator</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d)</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    : nh_(d)</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    , task_space_reader_(std::make_unique&lt;<a class="code" href="classTs__reader.html">Ts_reader</a>&gt;(d))</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    {}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr <a class="code" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a>(std::vector&lt;pcl::PointXYZ&gt;&amp; vector){</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;  pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr task_voxel(<span class="keyword">new</span> pcl::PointCloud&lt; pcl::PointXYZ &gt;);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;  <span class="keywordflow">for</span>(pcl::PointXYZ&amp; point : vector)</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    task_voxel-&gt;push_back(point);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;  </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;  <span class="keywordflow">return</span> task_voxel;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;}</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__mediator_html_a42b339e1ffa0b206129cc11fa300b217"><div class="ttname"><a href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator::Abstract_mediator</a></div><div class="ttdeci">Abstract_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00048">impl/abstract_mediator.h:48</a></div></div>
+<div class="ttc" id="amediator_2abstract__mediator_8h_html"><div class="ttname"><a href="mediator_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a26d47b6d6d64a8eb4b096fcb5f78b389"><div class="ttname"><a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00016">impl/abstract_mediator.cpp:16</a></div></div>
+<div class="ttc" id="aclassTs__reader_html"><div class="ttname"><a href="classTs__reader.html">Ts_reader</a></div><div class="ttdoc">TS reader.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00015">ts_reader.h:15</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_2abstract__mediator_8h.html b/doc/html/mediator_2abstract__mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..46f63cbfa2ed6f1959f21b00cc13dce4c2f4816c
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h.html
@@ -0,0 +1,112 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">mediator/abstract_mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__robot__decorator_8h_source.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="ceti__robot_8h_source.html">robot/ceti_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="ts__reader_8h_source.html">reader/ts_reader.h</a>&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &lt;octomap/octomap.h&gt;</code><br />
+<code>#include &lt;pcl/point_cloud.h&gt;</code><br />
+<code>#include &lt;pcl/octree/octree.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for mediator/abstract_mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_2abstract__mediator_8h__incl.png" border="0" usemap="#abstract__mediator_8h" alt=""/></div>
+<map name="abstract__mediator_8h" id="abstract__mediator_8h">
+<area shape="rect" title=" " alt="" coords="2984,5,3137,32"/>
+<area shape="rect" title=" " alt="" coords="669,363,748,389"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="1850,80,2037,121"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="2316,184,2483,211"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="621,273,796,315"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1013,87,1151,114"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2806,87,2966,114"/>
+<area shape="rect" title=" " alt="" coords="3221,281,3335,307"/>
+<area shape="rect" title=" " alt="" coords="3359,281,3491,307"/>
+<area shape="rect" title=" " alt="" coords="3515,281,3588,307"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="2990,87,3131,114"/>
+<area shape="rect" title=" " alt="" coords="3423,87,3575,114"/>
+<area shape="rect" title=" " alt="" coords="3600,87,3732,114"/>
+<area shape="rect" title=" " alt="" coords="3756,87,3899,114"/>
+<area shape="rect" title=" " alt="" coords="2105,177,2291,218"/>
+<area shape="rect" title=" " alt="" coords="986,169,1178,225"/>
+<area shape="rect" title=" " alt="" coords="1202,177,1421,218"/>
+<area shape="rect" title=" " alt="" coords="1445,177,1652,218"/>
+<area shape="rect" title=" " alt="" coords="1676,169,1832,225"/>
+<area shape="rect" title=" " alt="" coords="1857,177,2030,218"/>
+<area shape="rect" title=" " alt="" coords="746,177,962,218"/>
+<area shape="rect" title=" " alt="" coords="2507,184,2697,211"/>
+<area shape="rect" title=" " alt="" coords="2543,363,2741,389"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="271,169,461,225"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="485,177,671,218"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="61,177,247,218"/>
+<area shape="rect" title=" " alt="" coords="2679,281,2829,307"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="2975,177,3146,218"/>
+<area shape="rect" title=" " alt="" coords="2903,281,2962,307"/>
+<area shape="rect" title=" " alt="" coords="2986,273,3146,315"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_2abstract__mediator_8h__dep__incl.png" border="0" usemap="#abstract__mediator_8hdep" alt=""/></div>
+<map name="abstract__mediator_8hdep" id="abstract__mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="263,5,417,32"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="377,80,545,107"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
+</div>
+</div>
+<p><a href="mediator_2abstract__mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__mediator.html">Abstract_mediator</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract mediator.  <a href="classAbstract__mediator.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwing__BP.html">wing_BP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_2abstract__mediator_8h__dep__incl.map b/doc/html/mediator_2abstract__mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..21c8c75f6a4bd28cb1a533c91bf3c52f148faaec
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="abstract_mediator.h" name="abstract_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="263,5,417,32"/>
+<area shape="rect" id="node2" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" id="node4" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" id="node5" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="377,80,545,107"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
diff --git a/doc/html/mediator_2abstract__mediator_8h__dep__incl.md5 b/doc/html/mediator_2abstract__mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d1cf1b35785d56b1c45361983461a86c0570c443
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+721773b6513e35ae64ecee7f8e9e8f03
\ No newline at end of file
diff --git a/doc/html/mediator_2abstract__mediator_8h__dep__incl.png b/doc/html/mediator_2abstract__mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..5eeccddbd01d0ea801dbefad9415f33c8488f291
Binary files /dev/null and b/doc/html/mediator_2abstract__mediator_8h__dep__incl.png differ
diff --git a/doc/html/mediator_2abstract__mediator_8h__incl.map b/doc/html/mediator_2abstract__mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..94d9baa8b314681e88424d47e62e2e83bf98c4d2
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h__incl.map
@@ -0,0 +1,32 @@
+<map id="abstract_mediator.h" name="abstract_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="2984,5,3137,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="669,363,748,389"/>
+<area shape="rect" id="node3" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="1850,80,2037,121"/>
+<area shape="rect" id="node4" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="2316,184,2483,211"/>
+<area shape="rect" id="node6" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="621,273,796,315"/>
+<area shape="rect" id="node15" href="$ceti__robot_8h.html" title=" " alt="" coords="1013,87,1151,114"/>
+<area shape="rect" id="node19" href="$wing__reader_8h.html" title=" " alt="" coords="2806,87,2966,114"/>
+<area shape="rect" id="node20" title=" " alt="" coords="3221,281,3335,307"/>
+<area shape="rect" id="node23" title=" " alt="" coords="3359,281,3491,307"/>
+<area shape="rect" id="node24" title=" " alt="" coords="3515,281,3588,307"/>
+<area shape="rect" id="node27" href="$ts__reader_8h.html" title=" " alt="" coords="2990,87,3131,114"/>
+<area shape="rect" id="node28" title=" " alt="" coords="3423,87,3575,114"/>
+<area shape="rect" id="node29" title=" " alt="" coords="3600,87,3732,114"/>
+<area shape="rect" id="node30" title=" " alt="" coords="3756,87,3899,114"/>
+<area shape="rect" id="node7" title=" " alt="" coords="2105,177,2291,218"/>
+<area shape="rect" id="node8" title=" " alt="" coords="986,169,1178,225"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1202,177,1421,218"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1445,177,1652,218"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1676,169,1832,225"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1857,177,2030,218"/>
+<area shape="rect" id="node13" title=" " alt="" coords="746,177,962,218"/>
+<area shape="rect" id="node14" title=" " alt="" coords="2507,184,2697,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="2543,363,2741,389"/>
+<area shape="rect" id="node16" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="271,169,461,225"/>
+<area shape="rect" id="node17" href="$panel_8h.html" title=" " alt="" coords="485,177,671,218"/>
+<area shape="rect" id="node18" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="61,177,247,218"/>
+<area shape="rect" id="node21" title=" " alt="" coords="2679,281,2829,307"/>
+<area shape="rect" id="node22" href="$abstract__param__reader_8h.html" title=" " alt="" coords="2975,177,3146,218"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2903,281,2962,307"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2986,273,3146,315"/>
+</map>
diff --git a/doc/html/mediator_2abstract__mediator_8h__incl.md5 b/doc/html/mediator_2abstract__mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..76b57d8c5c09d6f7494102acb9630ae897d26cf8
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h__incl.md5
@@ -0,0 +1 @@
+68d9b08498e021e9880189d1c2dd32f5
\ No newline at end of file
diff --git a/doc/html/mediator_2abstract__mediator_8h__incl.png b/doc/html/mediator_2abstract__mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1fcef06b8f1157d2f0fe6aca9ee05216c36d2aa8
Binary files /dev/null and b/doc/html/mediator_2abstract__mediator_8h__incl.png differ
diff --git a/doc/html/mediator_2abstract__mediator_8h_source.html b/doc/html/mediator_2abstract__mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..7d6500c17212a00db9c618f25d6d79c4b38fc94c
--- /dev/null
+++ b/doc/html/mediator_2abstract__mediator_8h_source.html
@@ -0,0 +1,152 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_7b0efc06fc22adaf2ca7a380b2f6473b.html">mediator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator/abstract_mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="mediator_2abstract__mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__robot__decorator_8h.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ceti__robot_8h.html">robot/ceti_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ts__reader_8h.html">reader/ts_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &lt;octomap/octomap.h&gt;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;pcl/octree/octree.h&gt;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">struct </span><a class="code" href="structwing__BP.html">wing_BP</a> {</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    std::string <a class="code" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">name_</a>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    tf2::Transform <a class="code" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">pos_</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    tf2::Vector3 <a class="code" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">size_</a>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;};</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__mediator.html">Abstract_mediator</a> {</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">   35</a></span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; <a class="code" href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">nh_</a>; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">   36</a></span>&#160;    std::unique_ptr&lt;Ts_reader&gt; <a class="code" href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">task_space_reader_</a>; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">   37</a></span>&#160;    std::vector&lt;std::unique_ptr&lt;Abstract_robot_decorator&gt;&gt; <a class="code" href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">robots_</a>; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    std::vector&lt;std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt;&gt; <a class="code" href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">relative_bounds_</a>; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">   40</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">result_vector_</a>; </div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">   41</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt;&gt; <a class="code" href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">wings_</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    std::string <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a>; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">   56</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">set_result_vector</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;pcl::PointXYZ&gt;&gt;&amp; res) {<a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a> = res;}</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">   62</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;const std::string, std::vector&lt;std::unique_ptr&lt;Abstract_robot_element&gt;&gt;&gt;&amp; <a class="code" href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">wings</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>;}</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">   68</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt;&amp; <a class="code" href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">result_vector</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a>;}</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">   74</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;std::unique_ptr&lt;Abstract_robot_decorator&gt;&gt;&amp; <a class="code" href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">robots</a>(){<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>;}</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">   80</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">set_dirname</a>(std::string&amp; dirn) {<a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a> = dirn;}</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">   86</a></span>&#160;    <span class="keyword">inline</span> std::string&amp; <a class="code" href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">dirname</a>() {<span class="keywordflow">return</span> <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a>;}</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr <a class="code" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">vector_to_cloud</a>(std::vector&lt;pcl::PointXYZ&gt;&amp; vector);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160; </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">connect_robots</a>(std::unique_ptr&lt;Abstract_robot_decorator&gt; robot)=0; </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">check_collision</a>( <span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot)=0;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">mediate</a>()=0;</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">build_wings</a>(std::bitset&lt;3&gt;&amp; wing, <span class="keywordtype">int</span>&amp; robot)=0;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;};</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="astructwing__BP_html_a6396b771cdeff0b866020e3293a84eca"><div class="ttname"><a href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">wing_BP::pos_</a></div><div class="ttdeci">tf2::Transform pos_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00028">impl/abstract_mediator.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a4458d27f8d22f7ff58dc8191e1019e5a"><div class="ttname"><a href="classAbstract__mediator.html#a4458d27f8d22f7ff58dc8191e1019e5a">Abstract_mediator::result_vector_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; result_vector_</div><div class="ttdoc">Result_vector of base positions linked to robot.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00040">mediator/abstract_mediator.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a42b339e1ffa0b206129cc11fa300b217"><div class="ttname"><a href="classAbstract__mediator.html#a42b339e1ffa0b206129cc11fa300b217">Abstract_mediator::Abstract_mediator</a></div><div class="ttdeci">Abstract_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00048">impl/abstract_mediator.h:48</a></div></div>
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a4580d0c30a62cc91203b950694f98e98"><div class="ttname"><a href="classAbstract__mediator.html#a4580d0c30a62cc91203b950694f98e98">Abstract_mediator::relative_bounds_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; &gt; relative_bounds_</div><div class="ttdoc">total bound a workspace</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00037">impl/abstract_mediator.h:37</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a69df414af025faf785c9034633240282"><div class="ttname"><a href="classAbstract__mediator.html#a69df414af025faf785c9034633240282">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_decorator &gt; &gt; robots_</div><div class="ttdoc">Robots agents.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00037">mediator/abstract_mediator.h:37</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_aa12e37e26ac0e75fadb103bc50285408"><div class="ttname"><a href="classAbstract__mediator.html#aa12e37e26ac0e75fadb103bc50285408">Abstract_mediator::set_result_vector</a></div><div class="ttdeci">void set_result_vector(std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt;&gt; &amp;res)</div><div class="ttdoc">Set result vector.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00056">mediator/abstract_mediator.h:56</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="astructwing__BP_html"><div class="ttname"><a href="structwing__BP.html">wing_BP</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00026">impl/abstract_mediator.h:26</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a7dbd0e2d480c9a496aa2fb77a14ab592"><div class="ttname"><a href="classAbstract__mediator.html#a7dbd0e2d480c9a496aa2fb77a14ab592">Abstract_mediator::check_collision</a></div><div class="ttdeci">virtual bool check_collision(const int &amp;robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a64323b190e965287422f7b840bc1b95f"><div class="ttname"><a href="classAbstract__mediator.html#a64323b190e965287422f7b840bc1b95f">Abstract_mediator::set_dirname</a></div><div class="ttdeci">void set_dirname(std::string &amp;dirn)</div><div class="ttdoc">Set dirname.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00080">mediator/abstract_mediator.h:80</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a85b75b44d1f17f2d52c5e6171c13456b"><div class="ttname"><a href="classAbstract__mediator.html#a85b75b44d1f17f2d52c5e6171c13456b">Abstract_mediator::wings_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &gt; wings_</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00041">mediator/abstract_mediator.h:41</a></div></div>
+<div class="ttc" id="aabstract__robot__decorator_8h_html"><div class="ttname"><a href="abstract__robot__decorator_8h.html">abstract_robot_decorator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ac905db346790f6bac814cdb7cd1f268d"><div class="ttname"><a href="classAbstract__mediator.html#ac905db346790f6bac814cdb7cd1f268d">Abstract_mediator::robots</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Abstract_robot_decorator &gt; &gt; &amp; robots()</div><div class="ttdoc">Get robots.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00074">mediator/abstract_mediator.h:74</a></div></div>
+<div class="ttc" id="aceti__robot_8h_html"><div class="ttname"><a href="ceti__robot_8h.html">ceti_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a525894d2f6a888163c9de63093b2bd6c"><div class="ttname"><a href="classAbstract__mediator.html#a525894d2f6a888163c9de63093b2bd6c">Abstract_mediator::wings</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; std::unique_ptr&lt; Abstract_robot_element &gt; &gt; &gt; &amp; wings()</div><div class="ttdoc">Get wings.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00062">mediator/abstract_mediator.h:62</a></div></div>
+<div class="ttc" id="astructwing__BP_html_a294e3a77e24dec89f73422224f4091c9"><div class="ttname"><a href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">wing_BP::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00027">impl/abstract_mediator.h:27</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><div class="ttname"><a href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00040">impl/abstract_mediator.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a26d47b6d6d64a8eb4b096fcb5f78b389"><div class="ttname"><a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00016">impl/abstract_mediator.cpp:16</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a25e0b0dc5a154ad28d68f58500234d56"><div class="ttname"><a href="classAbstract__mediator.html#a25e0b0dc5a154ad28d68f58500234d56">Abstract_mediator::task_space_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Ts_reader &gt; task_space_reader_</div><div class="ttdoc">Task_space reader which provides drop off positions.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00036">mediator/abstract_mediator.h:36</a></div></div>
+<div class="ttc" id="astructwing__BP_html_ad3cb0666a2473c6a2c5397f393812f56"><div class="ttname"><a href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">wing_BP::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00029">impl/abstract_mediator.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9a48fc344129cd16dc0f20be2d9368ab"><div class="ttname"><a href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">Abstract_mediator::result_vector_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; result_vector_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00039">impl/abstract_mediator.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad4565f4b98c689289ddda9e7507736ae"><div class="ttname"><a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator::dirname_</a></div><div class="ttdeci">std::string dirname_</div><div class="ttdoc">Dirname of the reference protobuff.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00041">impl/abstract_mediator.h:41</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ada2fc1c6243fcb68ec2daf7bf52e17a4"><div class="ttname"><a href="classAbstract__mediator.html#ada2fc1c6243fcb68ec2daf7bf52e17a4">Abstract_mediator::result_vector</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; &amp; result_vector()</div><div class="ttdoc">Get result_vector.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00068">mediator/abstract_mediator.h:68</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_adcd1ada33f056dadda3dc17a6299b731"><div class="ttname"><a href="classAbstract__mediator.html#adcd1ada33f056dadda3dc17a6299b731">Abstract_mediator::mediate</a></div><div class="ttdeci">virtual void mediate()=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0c102b5e272139492ab04ce0d4e43234"><div class="ttname"><a href="classAbstract__mediator.html#a0c102b5e272139492ab04ce0d4e43234">Abstract_mediator::connect_robots</a></div><div class="ttdeci">virtual void connect_robots(Abstract_robot *robot)=0</div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="ats__reader_8h_html"><div class="ttname"><a href="ts__reader_8h.html">ts_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_aafb2967bb33e9cc4ba0dcf54f29be144"><div class="ttname"><a href="classAbstract__mediator.html#aafb2967bb33e9cc4ba0dcf54f29be144">Abstract_mediator::build_wings</a></div><div class="ttdeci">virtual void build_wings(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot)=0</div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad651113a7bd5059643177c7b5fc08b8d"><div class="ttname"><a href="classAbstract__mediator.html#ad651113a7bd5059643177c7b5fc08b8d">Abstract_mediator::dirname</a></div><div class="ttdeci">std::string &amp; dirname()</div><div class="ttdoc">Get dirname.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00086">mediator/abstract_mediator.h:86</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a47ae440332d8744b368f6f95a84daf2a"><div class="ttname"><a href="classAbstract__mediator.html#a47ae440332d8744b368f6f95a84daf2a">Abstract_mediator::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">Ros nodehandle object.</div><div class="ttdef"><b>Definition:</b> <a href="mediator_2abstract__mediator_8h_source.html#l00035">mediator/abstract_mediator.h:35</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_8cpp.html b/doc/html/mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..fac0cdf54ffe1553b62de4150e1b04577f0d6f65
--- /dev/null
+++ b/doc/html/mediator_8cpp.html
@@ -0,0 +1,83 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="mediator_8h_source.html">impl/mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__rviz__decorator_8h_source.html">impl/wing_rviz_decorator.h</a>&quot;</code><br />
+<code>#include &lt;tf2/LinearMath/Scalar.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_8cpp__incl.png" border="0" usemap="#mediator_8cpp" alt=""/></div>
+<map name="mediator_8cpp" id="mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="2996,5,3104,32"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="988,80,1115,107"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="2865,319,3064,345"/>
+<area shape="rect" title=" " alt="" coords="3087,80,3261,107"/>
+<area shape="rect" title=" " alt="" coords="1560,594,1639,621"/>
+<area shape="rect" title=" " alt="" coords="5,594,119,621"/>
+<area shape="rect" title=" " alt="" coords="681,594,813,621"/>
+<area shape="rect" title=" " alt="" coords="143,594,216,621"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="813,155,999,181"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1067,319,1228,345"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1906,229,2007,256"/>
+<area shape="rect" title=" " alt="" coords="1005,594,1157,621"/>
+<area shape="rect" title=" " alt="" coords="1181,594,1313,621"/>
+<area shape="rect" title=" " alt="" coords="837,594,980,621"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1637,497,1786,539"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="442,415,602,442"/>
+<area shape="rect" title=" " alt="" coords="1337,594,1536,621"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="1058,415,1237,442"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="880,505,1084,531"/>
+<area shape="rect" title=" " alt="" coords="507,594,657,621"/>
+<area shape="rect" title=" " alt="" coords="1663,587,1810,628"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2635,408,2799,449"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="2511,415,2610,442"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1565,415,1661,442"/>
+<area shape="rect" title=" " alt="" coords="2649,304,2841,360"/>
+<area shape="rect" title=" " alt="" coords="1405,311,1623,353"/>
+<area shape="rect" title=" " alt="" coords="1648,311,1855,353"/>
+<area shape="rect" title=" " alt="" coords="1879,304,2035,360"/>
+<area shape="rect" title=" " alt="" coords="2059,311,2233,353"/>
+<area shape="rect" title=" " alt="" coords="2257,311,2473,353"/>
+<area shape="rect" title=" " alt="" coords="2891,408,3038,449"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="374,497,545,539"/>
+<area shape="rect" title=" " alt="" coords="241,594,299,621"/>
+<area shape="rect" title=" " alt="" coords="323,587,483,628"/>
+</map>
+</div>
+</div>
+<p><a href="mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_8cpp__incl.map b/doc/html/mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d0ba65bf902bc1a2b431e90c5b0f973f226480f6
--- /dev/null
+++ b/doc/html/mediator_8cpp__incl.map
@@ -0,0 +1,36 @@
+<map id="mediator.cpp" name="mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2996,5,3104,32"/>
+<area shape="rect" id="node2" href="$mediator_8h.html" title=" " alt="" coords="988,80,1115,107"/>
+<area shape="rect" id="node21" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="2865,319,3064,345"/>
+<area shape="rect" id="node34" title=" " alt="" coords="3087,80,3261,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1560,594,1639,621"/>
+<area shape="rect" id="node4" title=" " alt="" coords="5,594,119,621"/>
+<area shape="rect" id="node5" title=" " alt="" coords="681,594,813,621"/>
+<area shape="rect" id="node6" title=" " alt="" coords="143,594,216,621"/>
+<area shape="rect" id="node7" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="813,155,999,181"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1067,319,1228,345"/>
+<area shape="rect" id="node18" href="$robot_8h.html" title=" " alt="" coords="1906,229,2007,256"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1005,594,1157,621"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1181,594,1313,621"/>
+<area shape="rect" id="node15" title=" " alt="" coords="837,594,980,621"/>
+<area shape="rect" id="node16" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1637,497,1786,539"/>
+<area shape="rect" id="node30" href="$wing__reader_8h.html" title=" " alt="" coords="442,415,602,442"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1337,594,1536,621"/>
+<area shape="rect" id="node10" href="$abstract__strategy_8h.html" title=" " alt="" coords="1058,415,1237,442"/>
+<area shape="rect" id="node11" href="$abstract__map__loader_8h.html" title=" " alt="" coords="880,505,1084,531"/>
+<area shape="rect" id="node12" title=" " alt="" coords="507,594,657,621"/>
+<area shape="rect" id="node17" title=" " alt="" coords="1663,587,1810,628"/>
+<area shape="rect" id="node19" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2635,408,2799,449"/>
+<area shape="rect" id="node20" href="$wing_8h.html" title=" " alt="" coords="2511,415,2610,442"/>
+<area shape="rect" id="node23" href="$impl_2field_8h.html" title=" " alt="" coords="1565,415,1661,442"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2649,304,2841,360"/>
+<area shape="rect" id="node25" title=" " alt="" coords="1405,311,1623,353"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1648,311,1855,353"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1879,304,2035,360"/>
+<area shape="rect" id="node28" title=" " alt="" coords="2059,311,2233,353"/>
+<area shape="rect" id="node29" title=" " alt="" coords="2257,311,2473,353"/>
+<area shape="rect" id="node22" title=" " alt="" coords="2891,408,3038,449"/>
+<area shape="rect" id="node31" href="$abstract__param__reader_8h.html" title=" " alt="" coords="374,497,545,539"/>
+<area shape="rect" id="node32" title=" " alt="" coords="241,594,299,621"/>
+<area shape="rect" id="node33" title=" " alt="" coords="323,587,483,628"/>
+</map>
diff --git a/doc/html/mediator_8cpp__incl.md5 b/doc/html/mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..479997b75ee2df511b3f7b8c3dedb16f3f351441
--- /dev/null
+++ b/doc/html/mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+21837c0a5dd1e6bf22ba564a7e2016c9
\ No newline at end of file
diff --git a/doc/html/mediator_8cpp__incl.png b/doc/html/mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..8454a58fbef61300cc0aff8e44203cf9c35890a4
Binary files /dev/null and b/doc/html/mediator_8cpp__incl.png differ
diff --git a/doc/html/mediator_8cpp_source.html b/doc/html/mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b7d267d39f11b7d88e834b4f463a7cef47335db7
--- /dev/null
+++ b/doc/html/mediator_8cpp_source.html
@@ -0,0 +1,558 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="mediator_8h.html">impl/mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__rviz__decorator_8h.html">impl/wing_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Scalar.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno"><a class="line" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">    6</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator::connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) {<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.push_back(robot); ROS_INFO(<span class="stringliteral">&quot;%s connected...&quot;</span>, robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().c_str());}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">    8</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">Mediator::setup_rviz</a>(){</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>.size(); i++){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <a class="code" href="classRobot.html">Robot</a>* r = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[i]);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>[i].size(); j++){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>[i][j]);</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;            <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(wrd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;            marker.ns = w-&gt;<a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>();</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;            marker.id = 1;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;            marker.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;            marker.pose.position.x = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;            marker.pose.position.y = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;            marker.pose.position.z = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;            marker.pose.orientation.x = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;            marker.pose.orientation.y = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            marker.pose.orientation.z = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;            marker.pose.orientation.w = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            marker.scale.x = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getX();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            marker.scale.y = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getY();</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;            marker.scale.z = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getZ();</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;            marker.color.r = 1.0;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;            marker.color.g = 1.0;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;            marker.color.b = 1.0;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;            marker.color.a = 1.0;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;            ma.markers.push_back(marker);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        }</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    }</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="comment">//pub_-&gt;publish(ma);</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;}</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">   42</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator::set_wings</a>(std::vector&lt;std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; wbp){</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i =0; i &lt; wbp.size(); i++){</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        std::vector&lt;Abstract_robot_element*&gt; v;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; wbp[i].first.size(); j++){</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;            <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are = <span class="keyword">new</span> <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>( <span class="keyword">new</span> <a class="code" href="classWing.html">Wing</a>(wbp[i].first[j].name_, wbp[i].first[j].pose_,wbp[i].first[j].size_));</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;            v.push_back(are);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        }</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>.push_back(v);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    }</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;}</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">   55</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator::check_collision</a>( <span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keywordtype">bool</span> succ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    std::vector&lt;int&gt; count_v;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="classRobot.html">Robot</a>* r = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    count_v.resize(r-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>().size()+1);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    std::string str;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot].size(); j++){</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        marker.ns = <span class="stringliteral">&quot;objects &quot;</span>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        marker.id = j;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        marker.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        marker.pose.position.x = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getOrigin().getX();</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        marker.pose.position.y = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getOrigin().getY();</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        marker.pose.position.z = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getOrigin().getZ();</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        marker.pose.orientation.x = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getRotation().getX();</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        marker.pose.orientation.y = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getRotation().getY();</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        marker.pose.orientation.z = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getRotation().getZ();</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        marker.pose.orientation.w = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j].getRotation().getW();</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        marker.scale.x = <a class="code" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">box_size</a>.getX();</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        marker.scale.y = <a class="code" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">box_size</a>.getY();</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        marker.scale.z = <a class="code" href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">box_size</a>.getZ();</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]-&gt;check_single_object_collision(<a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j], str)){</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;            marker.color.r = 0;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            marker.color.g = 1.0;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;            marker.color.b = 0;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;            marker.color.a = 1;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;            marker.color.r = 1;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;            marker.color.g = 0;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;            marker.color.b = 0;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;            marker.color.a = 1.0;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            succ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        }</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        ma.markers.push_back(marker);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]-&gt;workload_checker(count_v, <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[robot][j]);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    }</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span>&amp; i : count_v){</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="keywordflow">if</span>(i == 0) {succ = <span class="keyword">false</span>; <span class="keywordflow">break</span>;}</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    }</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="keywordflow">return</span> succ;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;}</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160; </div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">  105</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator::mediate</a>(){</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;assigne result to first robot...&quot;</span>);</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; grCenter = <a class="code" href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator::generate_Ground</a>(tf2::Vector3(0,0,0), 3.0f, 0.1f);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; filter_per_robot;</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    pcl::octree::OctreePointCloudSearch&lt; pcl::PointXYZ &gt;first_cloud(0.4f);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    first_cloud.setInputCloud(<a class="code" href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a>(<a class="code" href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">result_vector_</a>[0]));</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    first_cloud.addPointsFromInputCloud();</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    std::vector&lt;tf2::Transform&gt; ground_per_robot;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keywordflow">for</span>(pcl::PointXYZ&amp; p : grCenter){</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keywordtype">double</span> min_x, min_y, min_z, max_x, max_y, max_z;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        first_cloud.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keywordtype">bool</span> isInBox = (p.x &gt;= min_x &amp;&amp; p.x &lt;= max_x) &amp;&amp; (p.y &gt;= min_y &amp;&amp; p.y &lt;= max_y) &amp;&amp; (p.z &gt;= min_z &amp;&amp; p.z &lt;= max_z);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">if</span> (isInBox &amp;&amp; first_cloud.isVoxelOccupiedAtPoint(p)) {</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        std::vector&lt; int &gt; pointIdxVec;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">if</span> (first_cloud.voxelSearch(p, pointIdxVec)) ground_per_robot.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(p.x, p.y, p.z)));</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        }</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    }</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>.size(); i++){</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keywordflow">if</span> (i+1 &lt; <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>.size()){</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[i].size()-1; j &gt; 0; j--){</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                <span class="keywordflow">if</span>(<a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[i][j].getOrigin().distance(<a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[i+1].back().getOrigin()) == 0) <a class="code" href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">objects_</a>[i+1].pop_back();</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;            }</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        }</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    }</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <a class="code" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">calculate</a>(ground_per_robot);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="comment">//swap</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <a class="code" href="classAbstract__robot.html">Abstract_robot</a>* ar = <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[1];</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[1] = <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[0];</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[0] = ar;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <a class="code" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">calculate</a>(ground_per_robot);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;}</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">  144</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">Mediator::calculate</a>(std::vector&lt;tf2::Transform&gt;&amp; ground_per_robot){</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="keywordtype">int</span> r1 = 0; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <a class="code" href="classRobot.html">Robot</a>* ceti1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[0]);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt;= 7; j++){</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        std::bitset&lt;3&gt; <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>(j);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <a class="code" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">build_wings</a>(<a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>, r1);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        visualization_msgs::Marker m;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        m.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        m.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        m.ns = ceti1-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>();</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        m.id = 1;</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        m.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        m.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        m.pose.position.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        m.pose.position.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        m.pose.position.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        m.pose.orientation.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        m.pose.orientation.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        m.pose.orientation.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        m.pose.orientation.w = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        m.scale.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getX();</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        m.scale.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getY();</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        m.scale.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ()*2;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        m.color.r = 1.0;</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        m.color.g = 1.0;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        m.color.b = 1.0;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        m.color.a = 1.0;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160; </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        ros::Duration timer(0.10);</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160; </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; ground_per_robot.size(); i++){</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;            ceti1-&gt;<a class="code" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(ground_per_robot[i]);</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;            <span class="comment">// vis. robot 1</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160; </div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;            <span class="keywordflow">for</span> ( <span class="keywordtype">float</span> p = 0; p &lt; 2*M_PI; p += 0.0872665f){</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;                ceti1-&gt;<a class="code" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(0.0872665f);</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                ceti1-&gt;<a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>();</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;                m.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                m.pose.position.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                m.pose.position.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;                m.pose.position.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                m.pose.orientation.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                m.pose.orientation.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                m.pose.orientation.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                m.pose.orientation.w = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                ma.markers.push_back(m);</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160; </div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : ceti1-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                    <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                    ma.<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>.push_back(*wrd-&gt;<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>());</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;                }</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160; </div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                ma.markers.clear();</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160; </div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">check_collision</a>(r1)) {</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                    <a class="code" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">approximation</a>(ceti1);</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;                }   <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;                    <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                }</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;                </div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;               <span class="comment">//timer.sleep();</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;            }</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        }</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        ceti1-&gt;<a class="code" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a>();</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        m.action = visualization_msgs::Marker::DELETEALL;</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    }</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;}</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">  222</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">Mediator::approximation</a>(<a class="code" href="classRobot.html">Robot</a>* robot){</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <a class="code" href="classRobot.html">Robot</a>* ceti1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[1]);</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="keywordtype">int</span> r1 = 1;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160; </div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= 7; i++){</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        std::bitset&lt;3&gt; <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>(i);</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        <a class="code" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">build_wings</a>(<a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>, r1);</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160; </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        visualization_msgs::Marker m;</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        m.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        m.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        m.ns = ceti1-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>();</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        m.id = 1;</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        m.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        m.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        m.pose.position.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        m.pose.position.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        m.pose.position.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        m.pose.orientation.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        m.pose.orientation.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        m.pose.orientation.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        m.pose.orientation.w = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        m.scale.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getX();</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        m.scale.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getY();</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        m.scale.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ()*2;</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        m.color.r = 1.0;</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        m.color.g = 1.0;</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        m.color.b = 1.0;</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        m.color.a = 1.0;</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160; </div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* fields : robot-&gt;<a class="code" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a>()) {</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;            ceti1-&gt;<a class="code" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(fields-&gt;world_tf());</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;            <span class="comment">//ROS_INFO(&quot;field size %i&quot;, robot-&gt;access_fields().size());</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;            <span class="keywordflow">for</span> ( <span class="keywordtype">float</span> p = 0; p &lt; 2*M_PI; p += M_PI/2){</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;                ceti1-&gt;<a class="code" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(M_PI/2);</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;                ceti1-&gt;<a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>();</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160; </div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;                m.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;                m.pose.position.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;                m.pose.position.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;                m.pose.position.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;                m.pose.orientation.x = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;                m.pose.orientation.y = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;                m.pose.orientation.z = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;                m.pose.orientation.w = ceti1-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;                ma.markers.push_back(m);</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;                </div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : ceti1-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                    <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                    ma.<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>.push_back(*wrd-&gt;<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>());</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                }</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160; </div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                ma.markers.clear();</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                <span class="keywordflow">if</span> (robot-&gt;<a class="code" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a>(ceti1)) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160; </div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">check_collision</a>(r1)) {</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;                    ROS_INFO(<span class="stringliteral">&quot;penis&quot;</span>);</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;                    <a class="code" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">write_file</a>(robot, ceti1);</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;                } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                    <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                }</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160; </div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;            }</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;            </div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;            <span class="comment">//relative_ground.push_back(pcl::PointXYZ(fields-&gt;world_tf().getOrigin().getX(), fields-&gt;world_tf().getOrigin().getY(), fields-&gt;world_tf().getOrigin().getZ()));</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        }</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        ceti1-&gt;<a class="code" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a>();</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        m.action = visualization_msgs::Marker::DELETEALL;</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        ma.markers.push_back(m);</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        ma.markers.clear();</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    }</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;}</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160; </div>
+<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">  303</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">Mediator::write_file</a>(<a class="code" href="classRobot.html">Robot</a>* A, <a class="code" href="classRobot.html">Robot</a>* B){</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    std::ofstream o(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/results/&quot;</span> + <a class="code" href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">dirname_</a> + <span class="stringliteral">&quot;/&quot;</span> + std::to_string(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(ros::Time::now().toNSec())) + <span class="stringliteral">&quot;.yaml&quot;</span>);</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    <span class="keywordtype">double</span> r,p,y;</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    tf2::Matrix3x3 m(A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation());</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    m.getRPY(r,p,y);</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160; </div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160; </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <span class="keywordtype">float</span> size_x = A-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getX();</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <span class="keywordtype">float</span> size_y = A-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getY();</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    <span class="keywordtype">float</span> size_z = A-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getZ();</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160; </div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    <span class="keywordtype">float</span> pos_x = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordtype">float</span> pos_y = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="keywordtype">float</span> pos_z = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ() *2 ;</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;    <span class="keywordtype">float</span> rot_x = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    <span class="keywordtype">float</span> rot_y = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    <span class="keywordtype">float</span> rot_z = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    <span class="keywordtype">float</span> rot_w = A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160; </div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160; </div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160; </div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160; </div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;objects&#39; : [ \n&quot;</span>;</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_1&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_2&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }},\n&quot;</span>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_3&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_4&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_front&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0, &#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_back&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.45 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_left&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_right&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_table_top&#39;, &#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(pos_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(pos_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(pos_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(size_x) &lt;&lt; <span class="stringliteral">&quot; ,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(size_y) &lt;&lt; <span class="stringliteral">&quot; ,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(size_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(rot_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(rot_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(rot_z) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(rot_w) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }, &#39;rpy&#39;: { &#39;r&#39;: &quot;</span> &lt;&lt; std::to_string(r) &lt;&lt; <span class="stringliteral">&quot; , &#39;p&#39;: &quot;</span> &lt;&lt; std::to_string(p) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; } },\n&quot;</span>;</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    </div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    m.setRotation(B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation());</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    m.getRPY(r,p,y);</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160; </div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    size_x = B-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getX();</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    size_y = B-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getY();</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    size_z = B-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getZ();</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160; </div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    pos_x = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    pos_y = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    pos_z = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ() *2 ;</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    rot_x = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    rot_y = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    rot_z = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    rot_w = B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160; </div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_1&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_2&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }},\n&quot;</span>;</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_3&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_wheel_4&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.06 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_front&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0, &#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_back&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.45 },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_left&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_body_right&#39;, &#39;pos&#39;: { &#39;x&#39;: 0,&#39;y&#39;: 0,&#39;z&#39;: 0.50  },&#39;size&#39;: { &#39;length&#39;: 0.12,&#39;width&#39;: 0.12,&#39;height&#39;: 0.12 },&#39;orientation&#39;: { &#39;w&#39;: 1 },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }}, \n&quot;</span>;</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39; : &#39;table&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;_table_top&#39;, &#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(pos_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(pos_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(pos_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(size_x) &lt;&lt; <span class="stringliteral">&quot; ,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(size_y) &lt;&lt; <span class="stringliteral">&quot; ,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(size_z) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(rot_x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(rot_y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(rot_z) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(rot_w) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 }, &#39;rpy&#39;: { &#39;r&#39;: &quot;</span> &lt;&lt; std::to_string(r) &lt;&lt; <span class="stringliteral">&quot;, &#39;p&#39;: &quot;</span> &lt;&lt; std::to_string(p) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot;}},\n&quot;</span>;</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160; </div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160; </div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* ae : A-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* rd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(ae);</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keywordtype">float</span> x = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="keywordtype">float</span> y = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;        <span class="keywordtype">float</span> z = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        <span class="keywordtype">float</span> qx = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        <span class="keywordtype">float</span> qy = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        <span class="keywordtype">float</span> qz = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        <span class="keywordtype">float</span> qw = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160; </div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        <span class="keywordtype">float</span> length = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getX();</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;        <span class="keywordtype">float</span> width = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getY();</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;        <span class="keywordtype">float</span> height = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getZ();</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160; </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;&quot;</span> &lt;&lt; w-&gt;<a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>() &lt;&lt; <span class="stringliteral">&quot;&#39; , &#39;pos&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(x) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(z - 0.25*height) &lt;&lt; <span class="stringliteral">&quot; } , &#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(length) &lt;&lt; <span class="stringliteral">&quot; , &#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(width) &lt;&lt; <span class="stringliteral">&quot; , &#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(height) &lt;&lt; <span class="stringliteral">&quot; } , &#39;orientation&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(qx) &lt;&lt; <span class="stringliteral">&quot; , &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(qy) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(qz) &lt;&lt; <span class="stringliteral">&quot; , &#39;w&#39;: &quot;</span>&lt;&lt; std::to_string(qw) &lt;&lt; <span class="stringliteral">&quot; } , &#39;color&#39;: { &#39;r&#39;: 0.15 , &#39;g&#39;: 0.15 , &#39;b&#39;: 0.15 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    }</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160; </div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    </div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* ae : B-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* rd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(ae);</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;        <span class="keywordtype">float</span> x = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;        <span class="keywordtype">float</span> y = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;        <span class="keywordtype">float</span> z = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        <span class="keywordtype">float</span> qx = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;        <span class="keywordtype">float</span> qy = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        <span class="keywordtype">float</span> qz = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;        <span class="keywordtype">float</span> qw = rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;        <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(rd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160; </div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        <span class="keywordtype">float</span> length = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getX();</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;        <span class="keywordtype">float</span> width = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getY();</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        <span class="keywordtype">float</span> height = w-&gt;<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>().getZ();</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160; </div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;&quot;</span> &lt;&lt; w-&gt;<a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>() &lt;&lt; <span class="stringliteral">&quot;&#39;,  &#39;pos&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(y) &lt;&lt; <span class="stringliteral">&quot; , &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(z - 0.25*height) &lt;&lt; <span class="stringliteral">&quot; },&#39;size&#39;: { &#39;length&#39;: &quot;</span>&lt;&lt; std::to_string(length) &lt;&lt; <span class="stringliteral">&quot;,&#39;width&#39;: &quot;</span>&lt;&lt; std::to_string(width) &lt;&lt; <span class="stringliteral">&quot;,&#39;height&#39;: &quot;</span>&lt;&lt; std::to_string(height) &lt;&lt; <span class="stringliteral">&quot; },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span>&lt;&lt; std::to_string(qx) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span>&lt;&lt; std::to_string(qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span>&lt;&lt; std::to_string(qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span>&lt;&lt; std::to_string(qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 0.15,&#39;g&#39;: 0.15,&#39;b&#39;: 0.15 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    }</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    tf2::Transform tf_arm =  A-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * A-&gt;<a class="code" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>();</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;    <span class="keywordtype">float</span> arm_x = tf_arm.getOrigin().getX();</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;    <span class="keywordtype">float</span> arm_y = tf_arm.getOrigin().getY();</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;    <span class="keywordtype">float</span> arm_z = tf_arm.getOrigin().getZ();</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;    <span class="keywordtype">float</span> arm_qx = tf_arm.getRotation().getX();</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    <span class="keywordtype">float</span> arm_qy = tf_arm.getRotation().getY();</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    <span class="keywordtype">float</span> arm_qz = tf_arm.getRotation().getZ();</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <span class="keywordtype">float</span> arm_qw = tf_arm.getRotation().getW();</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160; </div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;arm&quot;</span> &lt;&lt; A-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;&#39;,&#39;type&#39;: &#39;ARM&#39;,&#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: 0.89 },&#39;size&#39;: { },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qx) &lt;&lt;<span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 1.00,&#39;g&#39;: 1.00,&#39;b&#39;: 1.00 } }, \n&quot;</span>;</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160; </div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    tf_arm =  B-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * B-&gt;<a class="code" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>();</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    arm_x = tf_arm.getOrigin().getX();</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;    arm_y = tf_arm.getOrigin().getY();</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    arm_z = tf_arm.getOrigin().getZ();</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;    arm_qx = tf_arm.getRotation().getX();</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    arm_qy = tf_arm.getRotation().getY();</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    arm_qz = tf_arm.getRotation().getZ();</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    arm_qw = tf_arm.getRotation().getW();</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160; </div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;{ &#39;id&#39;: &#39;arm&quot;</span> &lt;&lt; B-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().back() &lt;&lt; <span class="stringliteral">&quot;&#39;,&#39;type&#39;: &#39;ARM&#39;,&#39;pos&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_x) &lt;&lt; <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_y) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: 0.89 },&#39;size&#39;: { },&#39;orientation&#39;: { &#39;x&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qx) &lt;&lt;<span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qy) &lt;&lt; <span class="stringliteral">&quot;, &#39;z&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qz) &lt;&lt; <span class="stringliteral">&quot;, &#39;w&#39;: &quot;</span> &lt;&lt; std::to_string(arm_qw) &lt;&lt; <span class="stringliteral">&quot; },&#39;color&#39;: { &#39;r&#39;: 1.00,&#39;g&#39;: 1.00,&#39;b&#39;: 1.00 } } \n&quot;</span>;</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160; </div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;]}&quot;</span>;</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160; </div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    o &lt;&lt; ss.str();</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    o.close();</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;    </div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;}</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160; </div>
+<div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">  429</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator::build_wings</a>(std::bitset&lt;3&gt;&amp; wing, <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    std::bitset&lt;3&gt; result = <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]-&gt;observer_mask() &amp; wing;</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;    <a class="code" href="classRobot.html">Robot</a>* ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]);</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    </div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    <span class="keywordflow">for</span> (std::size_t i = 0; i &lt; result.size(); i++){</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;        <span class="keywordflow">if</span> (result[i]){</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;            ceti-&gt;<a class="code" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a>(<a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>[robot][i]);</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;        }</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    }</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160; </div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : ceti-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wad = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;        wad-&gt;<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>()-&gt;action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;        ma.markers.push_back(*wad-&gt;<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>());</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    }</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    <a class="code" href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">pub_</a>-&gt;publish(ma);</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;}</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160; </div>
+<div class="line"><a name="l00448"></a><span class="lineno"><a class="line" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">  448</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">Mediator::publish</a>(<a class="code" href="classRobot.html">Robot</a>* ar){</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;    visualization_msgs::MarkerArray ma;</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;    visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    marker.ns = ar-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>();</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;    marker.id = 1;</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    marker.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;    marker.pose.position.x = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getX();</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    marker.pose.position.y = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getY();</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    marker.pose.position.z = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ();</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    marker.pose.orientation.x = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getX();</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    marker.pose.orientation.y = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getY();</div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;    marker.pose.orientation.z = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getZ();</div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    marker.pose.orientation.w = ar-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation().getW();</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;    marker.scale.x = ar-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getX();</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;    marker.scale.y = ar-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getY();</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;    marker.scale.z = ar-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>().getZ();</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;    marker.color.r = 1.0;</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    marker.color.g = 1.0;</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    marker.color.b = 1.0;</div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    marker.color.a = 1.0;</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;    <span class="keywordflow">for</span> (<span class="keyword">auto</span> w : ar-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(w);</div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        ma.<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>.push_back(*wrd-&gt;<a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>());</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;    }</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;    </div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;    <span class="comment">//pub_-&gt;publish(ma);</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMediator_html_a362636b4a9f1018308c4843cb91c1f18"><div class="ttname"><a href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00006">mediator.cpp:6</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a77682034ad695305a6781b53af93d05e"><div class="ttname"><a href="classAbstract__mediator.html#a77682034ad695305a6781b53af93d05e">Abstract_mediator::pub_</a></div><div class="ttdeci">ros::Publisher * pub_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00038">impl/abstract_mediator.h:38</a></div></div>
+<div class="ttc" id="aclassRobot_html_aeb6c8c47edbcc561f15b00d551a045e6"><div class="ttname"><a href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot::observers</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; observers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00029">robot.h:29</a></div></div>
+<div class="ttc" id="aclassWing_html_a3dc2d8cffc9b50ff0a2333b68ea402cc"><div class="ttname"><a href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00023">wing.h:23</a></div></div>
+<div class="ttc" id="aclassMediator_html_a337eff9aa7e40e41f724e5b2e6c7f2b9"><div class="ttname"><a href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">Mediator::approximation</a></div><div class="ttdeci">void approximation(Robot *robot)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00222">mediator.cpp:222</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a72694508ca6d5ada16236775402dd385"><div class="ttname"><a href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">Abstract_robot::rotate</a></div><div class="ttdeci">void rotate(float deg)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00065">impl/abstract_robot.h:65</a></div></div>
+<div class="ttc" id="aclassWing_html_a166b6d0367d7218947e3b2321360c521"><div class="ttname"><a href="classWing.html#a166b6d0367d7218947e3b2321360c521">Wing::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00027">wing.h:27</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab95c43650b9596fc2e9bc374abeeadf6"><div class="ttname"><a href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00125">robot.cpp:125</a></div></div>
+<div class="ttc" id="aclassMediator_html_a1bc333451fdba008fa7eb985dfa824ab"><div class="ttname"><a href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00429">mediator.cpp:429</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af29a9894b43fc8124de65712414168f4"><div class="ttname"><a href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">Abstract_robot::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00060">impl/abstract_robot.h:60</a></div></div>
+<div class="ttc" id="aclassRobot_html_af626880915da239eeb0793eb41ab7596"><div class="ttname"><a href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00118">robot.cpp:118</a></div></div>
+<div class="ttc" id="amediator_8h_html"><div class="ttname"><a href="mediator_8h.html">mediator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><div class="ttname"><a href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00040">impl/abstract_mediator.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ab27017c6039446502704b443df934a2d"><div class="ttname"><a href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">Abstract_robot::set_tf</a></div><div class="ttdeci">void set_tf(tf2::Transform &amp;t)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00063">impl/abstract_robot.h:63</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a26d47b6d6d64a8eb4b096fcb5f78b389"><div class="ttname"><a href="classAbstract__mediator.html#a26d47b6d6d64a8eb4b096fcb5f78b389">Abstract_mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00016">impl/abstract_mediator.cpp:16</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html"><div class="ttname"><a href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00009">wing_rviz_decorator.h:9</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html_a0a92ddf506735cefb1b043b5fbbad680"><div class="ttname"><a href="impl_2abstract__mediator_8h.html#a0a92ddf506735cefb1b043b5fbbad680">box_size</a></div><div class="ttdeci">#define box_size</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00021">impl/abstract_mediator.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9a48fc344129cd16dc0f20be2d9368ab"><div class="ttname"><a href="classAbstract__mediator.html#a9a48fc344129cd16dc0f20be2d9368ab">Abstract_mediator::result_vector_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; pcl::PointXYZ &gt; &gt; result_vector_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00039">impl/abstract_mediator.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ad4565f4b98c689289ddda9e7507736ae"><div class="ttname"><a href="classAbstract__mediator.html#ad4565f4b98c689289ddda9e7507736ae">Abstract_mediator::dirname_</a></div><div class="ttdeci">std::string dirname_</div><div class="ttdoc">Dirname of the reference protobuff.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00041">impl/abstract_mediator.h:41</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a9138c650f2148d515802a89f079ace2f"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator::wing</a></div><div class="ttdeci">Abstract_robot_element * wing()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">impl/abstract_robot_element_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aclassMediator_html_a102d4e690501ce83fd6789309326fc95"><div class="ttname"><a href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00105">mediator.cpp:105</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_a7f27d708e22c72dae7ec90c2f1f699b2"><div class="ttname"><a href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">Wing_rviz_decorator::markers</a></div><div class="ttdeci">visualization_msgs::Marker * markers()</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00017">wing_rviz_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a0127bf58ba90cd82b39b0dfe4dfbe88a"><div class="ttname"><a href="classAbstract__mediator.html#a0127bf58ba90cd82b39b0dfe4dfbe88a">Abstract_mediator::generate_Ground</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_Ground(const tf2::Vector3 origin, const float diameter, float resolution)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8cpp_source.html#l00004">impl/abstract_mediator.cpp:4</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a78a9e79c0a97238c7d76ec1a3cc7349c"><div class="ttname"><a href="classAbstract__mediator.html#a78a9e79c0a97238c7d76ec1a3cc7349c">Abstract_mediator::objects_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; tf2::Transform &gt; &gt; objects_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00036">impl/abstract_mediator.h:36</a></div></div>
+<div class="ttc" id="aclassMediator_html_acd53d6e32bb1e65cb2f0197acdd101cd"><div class="ttname"><a href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">Mediator::write_file</a></div><div class="ttdeci">void write_file(Robot *A, Robot *B)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00303">mediator.cpp:303</a></div></div>
+<div class="ttc" id="aclassRobot_html_a1a73b8eaedcdab4b7defcedd81f8c713"><div class="ttname"><a href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">Robot::access_fields</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; access_fields()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00030">robot.h:30</a></div></div>
+<div class="ttc" id="aclassMediator_html_aa16035737db08e657c36a5d69374a67f"><div class="ttname"><a href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator::set_wings</a></div><div class="ttdeci">void set_wings(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00042">mediator.cpp:42</a></div></div>
+<div class="ttc" id="awing__rviz__decorator_8h_html"><div class="ttname"><a href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></div></div>
+<div class="ttc" id="aclassMediator_html_a04f3617b928e20bdd364244420a014ae"><div class="ttname"><a href="classMediator.html#a04f3617b928e20bdd364244420a014ae">Mediator::calculate</a></div><div class="ttdeci">void calculate(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00144">mediator.cpp:144</a></div></div>
+<div class="ttc" id="aclassMediator_html_a47c455b2e15e19e16565d9267528ff6e"><div class="ttname"><a href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">Mediator::setup_rviz</a></div><div class="ttdeci">void setup_rviz()</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00008">mediator.cpp:8</a></div></div>
+<div class="ttc" id="aclassMediator_html_a754b1266d12b93c214e4ca9f2bffde27"><div class="ttname"><a href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00055">mediator.cpp:55</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7eddff501a2c3a3d5feb6c2ec4b016e0"><div class="ttname"><a href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot::register_observers</a></div><div class="ttdeci">void register_observers(Abstract_robot_element *wd)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00182">robot.cpp:182</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></div><div class="ttdeci">wing_config</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00014">impl/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab57fc902b6e93336db5310abf05c8a92"><div class="ttname"><a href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot::check_robot_collision</a></div><div class="ttdeci">bool check_robot_collision(Robot *R)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00130">robot.cpp:130</a></div></div>
+<div class="ttc" id="aclassMediator_html_ad12e69c15639193aeff3ac95263d7774"><div class="ttname"><a href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">Mediator::publish</a></div><div class="ttdeci">void publish(Robot *r)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00448">mediator.cpp:448</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_8h.html b/doc/html/mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..c74b257bc4840a8e0966c5e84fff70b574360b78
--- /dev/null
+++ b/doc/html/mediator_8h.html
@@ -0,0 +1,103 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_8h__incl.png" border="0" usemap="#mediator_8h" alt=""/></div>
+<map name="mediator_8h" id="mediator_8h">
+<area shape="rect" title=" " alt="" coords="822,5,915,32"/>
+<area shape="rect" title=" " alt="" coords="1732,519,1811,546"/>
+<area shape="rect" title=" " alt="" coords="5,519,119,546"/>
+<area shape="rect" title=" " alt="" coords="143,519,275,546"/>
+<area shape="rect" title=" " alt="" coords="567,519,640,546"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="775,80,962,107"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1253,244,1415,271"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1826,155,1927,181"/>
+<area shape="rect" title=" " alt="" coords="838,519,990,546"/>
+<area shape="rect" title=" " alt="" coords="1015,519,1147,546"/>
+<area shape="rect" title=" " alt="" coords="1171,519,1313,546"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1542,423,1691,464"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="570,341,730,367"/>
+<area shape="rect" title=" " alt="" coords="1337,519,1536,546"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="983,341,1162,367"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="907,430,1111,457"/>
+<area shape="rect" title=" " alt="" coords="665,519,814,546"/>
+<area shape="rect" title=" " alt="" coords="1561,512,1707,553"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1541,333,1705,375"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1730,341,1829,367"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1641,244,1840,271"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="2074,341,2170,367"/>
+<area shape="rect" title=" " alt="" coords="1914,229,2106,285"/>
+<area shape="rect" title=" " alt="" coords="2130,237,2349,278"/>
+<area shape="rect" title=" " alt="" coords="2373,237,2580,278"/>
+<area shape="rect" title=" " alt="" coords="2604,229,2760,285"/>
+<area shape="rect" title=" " alt="" coords="2785,237,2958,278"/>
+<area shape="rect" title=" " alt="" coords="2982,237,3198,278"/>
+<area shape="rect" title=" " alt="" coords="1853,333,1999,375"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="509,423,679,464"/>
+<area shape="rect" title=" " alt="" coords="483,519,542,546"/>
+<area shape="rect" title=" " alt="" coords="299,512,459,553"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="mediator_8h__dep__incl.png" border="0" usemap="#mediator_8hdep" alt=""/></div>
+<map name="mediator_8hdep" id="mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="97,5,191,32"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="163,80,271,107"/>
+</map>
+</div>
+</div>
+<p><a href="mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMediator.html">Mediator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mediator_8h__dep__incl.map b/doc/html/mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..121e71f22bb2ca3323fd0a462f9519f2fe58a717
--- /dev/null
+++ b/doc/html/mediator_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="mediator.h" name="mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="97,5,191,32"/>
+<area shape="rect" id="node2" href="$base__routine_8cpp.html" title=" " alt="" coords="5,80,139,107"/>
+<area shape="rect" id="node3" href="$mediator_8cpp.html" title=" " alt="" coords="163,80,271,107"/>
+</map>
diff --git a/doc/html/mediator_8h__dep__incl.md5 b/doc/html/mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1b0962b97c46684074e99013f881d5f84b5cc9d5
--- /dev/null
+++ b/doc/html/mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+dc6a5c40d1987d86bd1cb5147e0d83b4
\ No newline at end of file
diff --git a/doc/html/mediator_8h__dep__incl.png b/doc/html/mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..4700e3b7c9d34046754b86db90dd9fca9f777958
Binary files /dev/null and b/doc/html/mediator_8h__dep__incl.png differ
diff --git a/doc/html/mediator_8h__incl.map b/doc/html/mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b7e2a98d2c7d2a072ff069b82ba54f2378868eac
--- /dev/null
+++ b/doc/html/mediator_8h__incl.map
@@ -0,0 +1,34 @@
+<map id="mediator.h" name="mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="822,5,915,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1732,519,1811,546"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,519,119,546"/>
+<area shape="rect" id="node4" title=" " alt="" coords="143,519,275,546"/>
+<area shape="rect" id="node5" title=" " alt="" coords="567,519,640,546"/>
+<area shape="rect" id="node6" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="775,80,962,107"/>
+<area shape="rect" id="node7" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1253,244,1415,271"/>
+<area shape="rect" id="node17" href="$robot_8h.html" title=" " alt="" coords="1826,155,1927,181"/>
+<area shape="rect" id="node12" title=" " alt="" coords="838,519,990,546"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1015,519,1147,546"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1171,519,1313,546"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1542,423,1691,464"/>
+<area shape="rect" id="node29" href="$wing__reader_8h.html" title=" " alt="" coords="570,341,730,367"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1337,519,1536,546"/>
+<area shape="rect" id="node9" href="$abstract__strategy_8h.html" title=" " alt="" coords="983,341,1162,367"/>
+<area shape="rect" id="node10" href="$abstract__map__loader_8h.html" title=" " alt="" coords="907,430,1111,457"/>
+<area shape="rect" id="node11" title=" " alt="" coords="665,519,814,546"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1561,512,1707,553"/>
+<area shape="rect" id="node18" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1541,333,1705,375"/>
+<area shape="rect" id="node19" href="$wing_8h.html" title=" " alt="" coords="1730,341,1829,367"/>
+<area shape="rect" id="node20" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1641,244,1840,271"/>
+<area shape="rect" id="node22" href="$impl_2field_8h.html" title=" " alt="" coords="2074,341,2170,367"/>
+<area shape="rect" id="node23" title=" " alt="" coords="1914,229,2106,285"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2130,237,2349,278"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2373,237,2580,278"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2604,229,2760,285"/>
+<area shape="rect" id="node27" title=" " alt="" coords="2785,237,2958,278"/>
+<area shape="rect" id="node28" title=" " alt="" coords="2982,237,3198,278"/>
+<area shape="rect" id="node21" title=" " alt="" coords="1853,333,1999,375"/>
+<area shape="rect" id="node30" href="$abstract__param__reader_8h.html" title=" " alt="" coords="509,423,679,464"/>
+<area shape="rect" id="node31" title=" " alt="" coords="483,519,542,546"/>
+<area shape="rect" id="node32" title=" " alt="" coords="299,512,459,553"/>
+</map>
diff --git a/doc/html/mediator_8h__incl.md5 b/doc/html/mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..79b86a9e8b341cff539eb493c4d19089d59438a7
--- /dev/null
+++ b/doc/html/mediator_8h__incl.md5
@@ -0,0 +1 @@
+9556b45bb291ecf7caecfb39aa40f9ba
\ No newline at end of file
diff --git a/doc/html/mediator_8h__incl.png b/doc/html/mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..aa9733df8c499f76a239ac32c22232dfb3b0bc74
Binary files /dev/null and b/doc/html/mediator_8h__incl.png differ
diff --git a/doc/html/mediator_8h_source.html b/doc/html/mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3dfc2caf55931564bfe84882852d952030e02f2f
--- /dev/null
+++ b/doc/html/mediator_8h_source.html
@@ -0,0 +1,91 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classMediator.html">   12</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMediator.html">Mediator</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">   14</a></span>&#160;    <a class="code" href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub) : <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>(objects, pub){};</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr <a class="code" href="classMediator.html#accf269f067ad74db3e291289a96a71cc">vector_to_cloud</a>(std::vector&lt;pcl::PointXYZ&gt;&amp; vector);</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    std::vector&lt;pcl::PointXYZ&gt; <a class="code" href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">generate_Ground</a>(<span class="keyword">const</span> tf2::Vector3 origin, <span class="keyword">const</span> <span class="keywordtype">float</span> diameter, <span class="keywordtype">float</span> resolution);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">approximation</a>(<a class="code" href="classRobot.html">Robot</a>* robot);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">write_file</a>(<a class="code" href="classRobot.html">Robot</a>* A, <a class="code" href="classRobot.html">Robot</a>* B);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">publish</a>(<a class="code" href="classRobot.html">Robot</a>* r);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">setup_rviz</a>();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a04f3617b928e20bdd364244420a014ae">calculate</a>(std::vector&lt;tf2::Transform&gt;&amp; ground_per_robot);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#aa16035737db08e657c36a5d69374a67f">set_wings</a>(std::vector&lt;std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; wbp) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">check_collision</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a102d4e690501ce83fd6789309326fc95">mediate</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">build_wings</a>(std::bitset&lt;3&gt;&amp; <a class="code" href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">wings</a>, <span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;};</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMediator_html_aeb53c3e593afd4bb9f79990c3398ff36"><div class="ttname"><a href="classMediator.html#aeb53c3e593afd4bb9f79990c3398ff36">Mediator::Mediator</a></div><div class="ttdeci">Mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8h_source.html#l00014">mediator.h:14</a></div></div>
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="aclassMediator_html_accf269f067ad74db3e291289a96a71cc"><div class="ttname"><a href="classMediator.html#accf269f067ad74db3e291289a96a71cc">Mediator::vector_to_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr vector_to_cloud(std::vector&lt; pcl::PointXYZ &gt; &amp;vector)</div></div>
+<div class="ttc" id="aclassMediator_html_a362636b4a9f1018308c4843cb91c1f18"><div class="ttname"><a href="classMediator.html#a362636b4a9f1018308c4843cb91c1f18">Mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00006">mediator.cpp:6</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassMediator_html_a337eff9aa7e40e41f724e5b2e6c7f2b9"><div class="ttname"><a href="classMediator.html#a337eff9aa7e40e41f724e5b2e6c7f2b9">Mediator::approximation</a></div><div class="ttdeci">void approximation(Robot *robot)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00222">mediator.cpp:222</a></div></div>
+<div class="ttc" id="aclassMediator_html_a1bc333451fdba008fa7eb985dfa824ab"><div class="ttname"><a href="classMediator.html#a1bc333451fdba008fa7eb985dfa824ab">Mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wings, int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00429">mediator.cpp:429</a></div></div>
+<div class="ttc" id="aclassMediator_html"><div class="ttname"><a href="classMediator.html">Mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="mediator_8h_source.html#l00012">mediator.h:12</a></div></div>
+<div class="ttc" id="aclassMediator_html_a5fe305318a23ed8967b76f897dfb6659"><div class="ttname"><a href="classMediator.html#a5fe305318a23ed8967b76f897dfb6659">Mediator::generate_Ground</a></div><div class="ttdeci">std::vector&lt; pcl::PointXYZ &gt; generate_Ground(const tf2::Vector3 origin, const float diameter, float resolution)</div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassMediator_html_a102d4e690501ce83fd6789309326fc95"><div class="ttname"><a href="classMediator.html#a102d4e690501ce83fd6789309326fc95">Mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00105">mediator.cpp:105</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a9838c41eeb97aef668cd7213f0e2e9a6"><div class="ttname"><a href="classAbstract__mediator.html#a9838c41eeb97aef668cd7213f0e2e9a6">Abstract_mediator::wings</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00052">impl/abstract_mediator.h:52</a></div></div>
+<div class="ttc" id="aclassMediator_html_acd53d6e32bb1e65cb2f0197acdd101cd"><div class="ttname"><a href="classMediator.html#acd53d6e32bb1e65cb2f0197acdd101cd">Mediator::write_file</a></div><div class="ttdeci">void write_file(Robot *A, Robot *B)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00303">mediator.cpp:303</a></div></div>
+<div class="ttc" id="aclassMediator_html_aa16035737db08e657c36a5d69374a67f"><div class="ttname"><a href="classMediator.html#aa16035737db08e657c36a5d69374a67f">Mediator::set_wings</a></div><div class="ttdeci">void set_wings(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00042">mediator.cpp:42</a></div></div>
+<div class="ttc" id="aclassMediator_html_a04f3617b928e20bdd364244420a014ae"><div class="ttname"><a href="classMediator.html#a04f3617b928e20bdd364244420a014ae">Mediator::calculate</a></div><div class="ttdeci">void calculate(std::vector&lt; tf2::Transform &gt; &amp;ground_per_robot)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00144">mediator.cpp:144</a></div></div>
+<div class="ttc" id="aclassMediator_html_a47c455b2e15e19e16565d9267528ff6e"><div class="ttname"><a href="classMediator.html#a47c455b2e15e19e16565d9267528ff6e">Mediator::setup_rviz</a></div><div class="ttdeci">void setup_rviz()</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00008">mediator.cpp:8</a></div></div>
+<div class="ttc" id="aclassMediator_html_a754b1266d12b93c214e4ca9f2bffde27"><div class="ttname"><a href="classMediator.html#a754b1266d12b93c214e4ca9f2bffde27">Mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00055">mediator.cpp:55</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassMediator_html_ad12e69c15639193aeff3ac95263d7774"><div class="ttname"><a href="classMediator.html#ad12e69c15639193aeff3ac95263d7774">Mediator::publish</a></div><div class="ttdeci">void publish(Robot *r)</div><div class="ttdef"><b>Definition:</b> <a href="mediator_8cpp_source.html#l00448">mediator.cpp:448</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/menu.js b/doc/html/menu.js
new file mode 100644
index 0000000000000000000000000000000000000000..433c15b8f01814eb5f5ee0e9bba623e07fc04cb2
--- /dev/null
+++ b/doc/html/menu.js
@@ -0,0 +1,50 @@
+/*
+ @licstart  The following is the entire license notice for the
+ JavaScript code in this file.
+
+ Copyright (C) 1997-2017 by Dimitri van Heesch
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ @licend  The above is the entire license notice
+ for the JavaScript code in this file
+ */
+function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
+  function makeTree(data,relPath) {
+    var result='';
+    if ('children' in data) {
+      result+='<ul>';
+      for (var i in data.children) {
+        result+='<li><a href="'+relPath+data.children[i].url+'">'+
+                                data.children[i].text+'</a>'+
+                                makeTree(data.children[i],relPath)+'</li>';
+      }
+      result+='</ul>';
+    }
+    return result;
+  }
+
+  $('#main-nav').append(makeTree(menudata,relPath));
+  $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
+  if (searchEnabled) {
+    if (serverSide) {
+      $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+relPath+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
+    } else {
+      $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
+    }
+  }
+  $('#main-menu').smartmenus();
+}
+/* @license-end */
diff --git a/doc/html/menudata.js b/doc/html/menudata.js
new file mode 100644
index 0000000000000000000000000000000000000000..e68ffe603045e73c7fd8669ced1c471e12c72d6e
--- /dev/null
+++ b/doc/html/menudata.js
@@ -0,0 +1,104 @@
+/*
+@licstart  The following is the entire license notice for the
+JavaScript code in this file.
+
+Copyright (C) 1997-2019 by Dimitri van Heesch
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of version 2 of the GNU General Public License as published by
+the Free Software Foundation
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+@licend  The above is the entire license notice
+for the JavaScript code in this file
+*/
+var menudata={children:[
+{text:"Main Page",url:"index.html"},
+{text:"Classes",url:"annotated.html",children:[
+{text:"Class List",url:"annotated.html"},
+{text:"Class Hierarchy",url:"inherits.html"},
+{text:"Class Members",url:"functions.html",children:[
+{text:"All",url:"functions.html",children:[
+{text:"a",url:"functions.html#index_a"},
+{text:"b",url:"functions_b.html#index_b"},
+{text:"c",url:"functions_c.html#index_c"},
+{text:"d",url:"functions_d.html#index_d"},
+{text:"f",url:"functions_f.html#index_f"},
+{text:"g",url:"functions_g.html#index_g"},
+{text:"i",url:"functions_i.html#index_i"},
+{text:"j",url:"functions_j.html#index_j"},
+{text:"l",url:"functions_l.html#index_l"},
+{text:"m",url:"functions_m.html#index_m"},
+{text:"n",url:"functions_n.html#index_n"},
+{text:"o",url:"functions_o.html#index_o"},
+{text:"p",url:"functions_p.html#index_p"},
+{text:"r",url:"functions_r.html#index_r"},
+{text:"s",url:"functions_s.html#index_s"},
+{text:"t",url:"functions_t.html#index_t"},
+{text:"u",url:"functions_u.html#index_u"},
+{text:"v",url:"functions_v.html#index_v"},
+{text:"w",url:"functions_w.html#index_w"},
+{text:"~",url:"functions_~.html#index__7E"}]},
+{text:"Functions",url:"functions_func.html",children:[
+{text:"a",url:"functions_func.html#index_a"},
+{text:"b",url:"functions_func_b.html#index_b"},
+{text:"c",url:"functions_func_c.html#index_c"},
+{text:"d",url:"functions_func_d.html#index_d"},
+{text:"f",url:"functions_func_f.html#index_f"},
+{text:"g",url:"functions_func_g.html#index_g"},
+{text:"i",url:"functions_func_i.html#index_i"},
+{text:"j",url:"functions_func_j.html#index_j"},
+{text:"l",url:"functions_func_l.html#index_l"},
+{text:"m",url:"functions_func_m.html#index_m"},
+{text:"n",url:"functions_func_n.html#index_n"},
+{text:"o",url:"functions_func_o.html#index_o"},
+{text:"p",url:"functions_func_p.html#index_p"},
+{text:"r",url:"functions_func_r.html#index_r"},
+{text:"s",url:"functions_func_s.html#index_s"},
+{text:"t",url:"functions_func_t.html#index_t"},
+{text:"u",url:"functions_func_u.html#index_u"},
+{text:"v",url:"functions_func_v.html#index_v"},
+{text:"w",url:"functions_func_w.html#index_w"},
+{text:"~",url:"functions_func_~.html#index__7E"}]},
+{text:"Variables",url:"functions_vars.html",children:[
+{text:"a",url:"functions_vars.html#index_a"},
+{text:"b",url:"functions_vars.html#index_b"},
+{text:"c",url:"functions_vars.html#index_c"},
+{text:"d",url:"functions_vars.html#index_d"},
+{text:"g",url:"functions_vars.html#index_g"},
+{text:"i",url:"functions_vars.html#index_i"},
+{text:"j",url:"functions_vars.html#index_j"},
+{text:"m",url:"functions_vars.html#index_m"},
+{text:"n",url:"functions_vars.html#index_n"},
+{text:"o",url:"functions_vars.html#index_o"},
+{text:"p",url:"functions_vars.html#index_p"},
+{text:"r",url:"functions_vars.html#index_r"},
+{text:"s",url:"functions_vars.html#index_s"},
+{text:"t",url:"functions_vars.html#index_t"},
+{text:"v",url:"functions_vars.html#index_v"},
+{text:"w",url:"functions_vars.html#index_w"}]}]}]},
+{text:"Files",url:"files.html",children:[
+{text:"File List",url:"files.html"},
+{text:"File Members",url:"globals.html",children:[
+{text:"All",url:"globals.html",children:[
+{text:"_",url:"globals.html#index__5F"},
+{text:"b",url:"globals.html#index_b"},
+{text:"e",url:"globals.html#index_e"},
+{text:"l",url:"globals.html#index_l"},
+{text:"m",url:"globals.html#index_m"},
+{text:"r",url:"globals.html#index_r"},
+{text:"t",url:"globals.html#index_t"},
+{text:"w",url:"globals.html#index_w"}]},
+{text:"Functions",url:"globals_func.html"},
+{text:"Variables",url:"globals_vars.html"},
+{text:"Enumerations",url:"globals_enum.html"},
+{text:"Enumerator",url:"globals_eval.html"},
+{text:"Macros",url:"globals_defs.html"}]}]}]}
diff --git a/doc/html/moveit__grasp__mediator_8cpp.html b/doc/html/moveit__grasp__mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..f8be626322d850865592c06c0df345a23ac05448
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8cpp.html
@@ -0,0 +1,101 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_grasp_mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_grasp_mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="moveit__grasp__mediator_8h_source.html">impl/moveit_grasp_mediator.h</a>&quot;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;gb_grasp/MapConfigLoader.h&gt;</code><br />
+<code>#include &lt;moveit/robot_state/conversions.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="wing__moveit__decorator_8h_source.html">impl/wing_moveit_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_grasp_mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__grasp__mediator_8cpp__incl.png" border="0" usemap="#moveit__grasp__mediator_8cpp" alt=""/></div>
+<map name="moveit__grasp__mediator_8cpp" id="moveit__grasp__mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="5282,5,5486,32"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="4523,87,4746,114"/>
+<area shape="rect" title=" " alt="" coords="5203,534,5261,561"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="2035,348,2255,375"/>
+<area shape="rect" title=" " alt="" coords="5421,87,5632,114"/>
+<area shape="rect" title=" " alt="" coords="5656,80,5803,121"/>
+<area shape="rect" title=" " alt="" coords="3183,616,3262,643"/>
+<area shape="rect" title=" " alt="" coords="4546,534,4659,561"/>
+<area shape="rect" title=" " alt="" coords="4707,534,4839,561"/>
+<area shape="rect" title=" " alt="" coords="4963,534,5037,561"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="3992,259,4179,285"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="3573,437,3734,464"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="2828,348,2929,375"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="4792,430,4963,471"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="2407,169,2585,196"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="4560,348,4709,375"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="4734,348,4906,375"/>
+<area shape="rect" title=" " alt="" coords="3440,169,3629,196"/>
+<area shape="rect" title=" " alt="" coords="3653,169,3816,196"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="5083,348,5245,375"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="2876,527,3025,568"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="4325,348,4485,375"/>
+<area shape="rect" title=" " alt="" coords="3572,348,3724,375"/>
+<area shape="rect" title=" " alt="" coords="3749,348,3881,375"/>
+<area shape="rect" title=" " alt="" coords="3905,348,4047,375"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2397,430,2561,471"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="2273,437,2372,464"/>
+<area shape="rect" title=" " alt="" coords="2783,423,2975,479"/>
+<area shape="rect" title=" " alt="" coords="1799,430,2017,471"/>
+<area shape="rect" title=" " alt="" coords="2042,430,2249,471"/>
+<area shape="rect" title=" " alt="" coords="3101,423,3257,479"/>
+<area shape="rect" title=" " alt="" coords="2585,430,2759,471"/>
+<area shape="rect" title=" " alt="" coords="3281,430,3497,471"/>
+<area shape="rect" title=" " alt="" coords="1601,251,1770,293"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="1421,259,1576,285"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="773,534,942,561"/>
+<area shape="rect" title=" " alt="" coords="1794,251,1974,293"/>
+<area shape="rect" title=" " alt="" coords="1998,251,2178,293"/>
+<area shape="rect" title=" " alt="" coords="2202,251,2382,293"/>
+<area shape="rect" title=" " alt="" coords="2406,251,2586,293"/>
+<area shape="rect" title=" " alt="" coords="2763,244,2943,300"/>
+<area shape="rect" title=" " alt="" coords="2967,244,3147,300"/>
+<area shape="rect" title=" " alt="" coords="3172,251,3353,293"/>
+<area shape="rect" title=" " alt="" coords="3378,244,3561,300"/>
+<area shape="rect" title=" " alt="" coords="3585,251,3765,293"/>
+<area shape="rect" title=" " alt="" coords="246,251,426,293"/>
+<area shape="rect" title=" " alt="" coords="451,251,635,293"/>
+<area shape="rect" title=" " alt="" coords="659,251,845,293"/>
+<area shape="rect" title=" " alt="" coords="869,251,1067,293"/>
+<area shape="rect" title=" " alt="" coords="1091,251,1346,293"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__grasp__mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__grasp__mediator_8cpp__incl.map b/doc/html/moveit__grasp__mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d5d108928b7dbc54bd2356c348159e12899deb44
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8cpp__incl.map
@@ -0,0 +1,52 @@
+<map id="moveit_grasp_mediator.cpp" name="moveit_grasp_mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="5282,5,5486,32"/>
+<area shape="rect" id="node2" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="4523,87,4746,114"/>
+<area shape="rect" id="node21" title=" " alt="" coords="5203,534,5261,561"/>
+<area shape="rect" id="node28" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="2035,348,2255,375"/>
+<area shape="rect" id="node49" title=" " alt="" coords="5421,87,5632,114"/>
+<area shape="rect" id="node50" title=" " alt="" coords="5656,80,5803,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="3183,616,3262,643"/>
+<area shape="rect" id="node4" title=" " alt="" coords="4546,534,4659,561"/>
+<area shape="rect" id="node5" title=" " alt="" coords="4707,534,4839,561"/>
+<area shape="rect" id="node6" title=" " alt="" coords="4963,534,5037,561"/>
+<area shape="rect" id="node7" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="3992,259,4179,285"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="3573,437,3734,464"/>
+<area shape="rect" id="node10" href="$robot_8h.html" title=" " alt="" coords="2828,348,2929,375"/>
+<area shape="rect" id="node20" href="$abstract__param__reader_8h.html" title=" " alt="" coords="4792,430,4963,471"/>
+<area shape="rect" id="node25" href="$moveit__mediator_8h.html" title=" " alt="" coords="2407,169,2585,196"/>
+<area shape="rect" id="node44" href="$job__reader_8h.html" title=" " alt="" coords="4560,348,4709,375"/>
+<area shape="rect" id="node45" href="$cuboid__reader_8h.html" title=" " alt="" coords="4734,348,4906,375"/>
+<area shape="rect" id="node46" title=" " alt="" coords="3440,169,3629,196"/>
+<area shape="rect" id="node47" title=" " alt="" coords="3653,169,3816,196"/>
+<area shape="rect" id="node48" href="$robot__reader_8h.html" title=" " alt="" coords="5083,348,5245,375"/>
+<area shape="rect" id="node9" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="2876,527,3025,568"/>
+<area shape="rect" id="node19" href="$wing__reader_8h.html" title=" " alt="" coords="4325,348,4485,375"/>
+<area shape="rect" id="node22" title=" " alt="" coords="3572,348,3724,375"/>
+<area shape="rect" id="node23" title=" " alt="" coords="3749,348,3881,375"/>
+<area shape="rect" id="node24" title=" " alt="" coords="3905,348,4047,375"/>
+<area shape="rect" id="node11" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2397,430,2561,471"/>
+<area shape="rect" id="node12" href="$wing_8h.html" title=" " alt="" coords="2273,437,2372,464"/>
+<area shape="rect" id="node13" title=" " alt="" coords="2783,423,2975,479"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1799,430,2017,471"/>
+<area shape="rect" id="node15" title=" " alt="" coords="2042,430,2249,471"/>
+<area shape="rect" id="node16" title=" " alt="" coords="3101,423,3257,479"/>
+<area shape="rect" id="node17" title=" " alt="" coords="2585,430,2759,471"/>
+<area shape="rect" id="node18" title=" " alt="" coords="3281,430,3497,471"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1601,251,1770,293"/>
+<area shape="rect" id="node27" href="$moveit__robot_8h.html" title=" " alt="" coords="1421,259,1576,285"/>
+<area shape="rect" id="node29" href="$collision__helper_8h.html" title=" " alt="" coords="773,534,942,561"/>
+<area shape="rect" id="node30" title=" " alt="" coords="1794,251,1974,293"/>
+<area shape="rect" id="node31" title=" " alt="" coords="1998,251,2178,293"/>
+<area shape="rect" id="node32" title=" " alt="" coords="2202,251,2382,293"/>
+<area shape="rect" id="node33" title=" " alt="" coords="2406,251,2586,293"/>
+<area shape="rect" id="node34" title=" " alt="" coords="2763,244,2943,300"/>
+<area shape="rect" id="node35" title=" " alt="" coords="2967,244,3147,300"/>
+<area shape="rect" id="node36" title=" " alt="" coords="3172,251,3353,293"/>
+<area shape="rect" id="node37" title=" " alt="" coords="3378,244,3561,300"/>
+<area shape="rect" id="node38" title=" " alt="" coords="3585,251,3765,293"/>
+<area shape="rect" id="node39" title=" " alt="" coords="246,251,426,293"/>
+<area shape="rect" id="node40" title=" " alt="" coords="451,251,635,293"/>
+<area shape="rect" id="node41" title=" " alt="" coords="659,251,845,293"/>
+<area shape="rect" id="node42" title=" " alt="" coords="869,251,1067,293"/>
+<area shape="rect" id="node43" title=" " alt="" coords="1091,251,1346,293"/>
+</map>
diff --git a/doc/html/moveit__grasp__mediator_8cpp__incl.md5 b/doc/html/moveit__grasp__mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..feed86035669bcff3ae94e4f6d0de3ccfe7b8d4d
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+5343f1ee69f1d91af28860ff5a3e94a8
\ No newline at end of file
diff --git a/doc/html/moveit__grasp__mediator_8cpp__incl.png b/doc/html/moveit__grasp__mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..84330b851ecf6710a621a93cdac882708552e2fe
Binary files /dev/null and b/doc/html/moveit__grasp__mediator_8cpp__incl.png differ
diff --git a/doc/html/moveit__grasp__mediator_8cpp_source.html b/doc/html/moveit__grasp__mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5256c16358602ad8df444ded051a64383637ffd2
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8cpp_source.html
@@ -0,0 +1,661 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_grasp_mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_grasp_mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__grasp__mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__grasp__mediator_8h.html">impl/moveit_grasp_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/MapConfigLoader.h&gt;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;moveit/robot_state/conversions.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__moveit__decorator_8h.html">impl/wing_moveit_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">    8</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator::connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) {</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.push_back(robot);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;%s connected...&quot;</span>, robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().c_str());</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <span class="keyword">auto</span> mr = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(robot);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;        <a class="code" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">manipulate_grasp_data</a>(mr);</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        <span class="keyword">auto</span> map_gen = std::make_shared&lt;MapGenerator&gt;(*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>, <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>, mr-&gt;map().at(<span class="stringliteral">&quot;eef_name&quot;</span>), mr-&gt;name().c_str(), <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>-&gt;getJointModelGroup(mr-&gt;name().c_str()), <a class="code" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a>().get()-&gt;getCurrentState(), <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a>);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        <span class="keywordtype">double</span> min_quality, max_candidates;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        <span class="keywordtype">bool</span> top_only;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;  rosparam_shortcuts::get(<a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str(),*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>,<span class="stringliteral">&quot;min_quality&quot;</span>,min_quality);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        rosparam_shortcuts::get(<a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str(),*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>,<span class="stringliteral">&quot;max_candidate_count&quot;</span>,max_candidates);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        rosparam_shortcuts::get(<a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str(),*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>,<span class="stringliteral">&quot;top_grasps_only&quot;</span>,top_only);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;min_quality: %f&quot;</span>, min_quality);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;max_candidate_count: %f&quot;</span>, max_candidates);</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;top_grasps_only: %f&quot;</span>, top_only);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;  map_gen-&gt;SetQuality(min_quality);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;  map_gen-&gt;SetMaxGrasp(max_candidates);</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        map_gen-&gt;SetZGraspOnly(top_only);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        mr-&gt;set_grasp_map_generator(map_gen);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;}</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">   35</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">Moveit_grasp_mediator::manipulate_mapspace</a>(tf2::Transform&amp; tf, tf2::Vector3&amp; size){</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordtype">double</span> r,p,y;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    std::vector&lt;double&gt; rot_mapspace(3,0);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    tf2::Matrix3x3 m(tf.getRotation());</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    m.getRPY(r,p, y);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/mapspace/rot&quot;</span>, std::vector&lt;double&gt;({r,p,y}));</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/mapspace/pos&quot;</span>, std::vector&lt;double&gt;({tf.getOrigin().getX(), tf.getOrigin().getY(), 0.91f}));</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/mapspace/dim&quot;</span>, std::vector&lt;double&gt;({size.getX(), size.getY(), size.getZ()}));</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="comment">//nh_-&gt;setParam(&quot;/voxel_space/dim&quot;, std::vector&lt;float&gt;({0.3f,0.3f,0.2f}));</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="comment">//nh_-&gt;setParam(&quot;/voxel_space/pos&quot;, std::vector&lt;double&gt;({tf.getOrigin().getX(), tf.getOrigin().getY(), tf.getOrigin().getZ()}));</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="comment">//nh_-&gt;setParam(&quot;/voxel_space/rot&quot;, std::vector&lt;double&gt;({r,p,y}));</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;}</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">   49</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">Moveit_grasp_mediator::manipulate_grasp_data</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>* robot) {</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        XmlRpc::XmlRpcValue data;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/&quot;</span>, data);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        std::regex rx(<span class="stringliteral">&quot;panda_arm([0-9]+)&quot;</span>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        std::regex_match(robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>(), match, rx);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        data[<span class="stringliteral">&quot;base_link&quot;</span>]= <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;end_effector_name&quot;</span>] = robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str();</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;end_effector_type&quot;</span>] = <span class="stringliteral">&quot;finger&quot;</span>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_resolution&quot;</span>] = 0.001;</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;angle_resolution&quot;</span>] = 45;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_max_depth&quot;</span>] = 0.035;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_min_depth&quot;</span>] = 0.01;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_depth_resolution&quot;</span>] = 0.005;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;approach_distance_desired&quot;</span>] = 0.05;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;retreat_distance_desired&quot;</span>] = 0.05;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;lift_distance_desired&quot;</span>] = 0.02;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_padding_on_approach&quot;</span>] = 0.005;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160; </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        std::stringstream ss;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;panda_&quot;</span> &lt;&lt;  match[1] &lt;&lt; <span class="stringliteral">&quot;_tool_center_point&quot;</span>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;define_tcp_by_name&quot;</span>] = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_name&quot;</span>] = ss.str().c_str();</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][0] = 0;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][1] = 0;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][2] = -0.105;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][3] = 0;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][4] = 0;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;tcp_to_eef_mount_transform&quot;</span>][5] = -0.7853;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;pregrasp_time_from_start&quot;</span>] = 0;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_time_from_start&quot;</span>] = 0;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160; </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;pregrasp_posture&quot;</span>][0] = 0.04;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;grasp_posture&quot;</span>][0] = 0;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;joints&quot;</span>][0] = robot-&gt;<a class="code" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">mgi_hand</a>()-&gt;getJoints()[1].c_str();</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;max_finger_width&quot;</span>] = 0.085;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;min_finger_width&quot;</span>] = 0.06;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;max_grasp_width&quot;</span>] = 0.08;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;gripper_finger_width&quot;</span>] = 0.015;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;active_suction_range_x&quot;</span>] = 0.022;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;active_suction_range_y&quot;</span>] = 0.012;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;suction_rows_count&quot;</span>] = 2;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        data[robot-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;eef_name&quot;</span>).c_str()][<span class="stringliteral">&quot;suction_cols_count&quot;</span>] = 2;</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/&quot;</span>, data);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;}</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">  108</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">Moveit_grasp_mediator::generateRandomCuboid</a>(std::string&amp; object_name, geometry_msgs::Pose&amp; object_pose, <span class="keywordtype">double</span>&amp; x_depth,</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                            <span class="keywordtype">double</span>&amp; y_width, <span class="keywordtype">double</span>&amp; z_height)</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  {</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="comment">// Generate random cuboid</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordtype">double</span> xmin = 0.1;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="keywordtype">double</span> xmax = 0.7;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keywordtype">double</span> ymin = -0.25;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordtype">double</span> ymax = 0.25;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="keywordtype">double</span> zmin = 0.89;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <span class="keywordtype">double</span> zmax = 1.2;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    rviz_visual_tools::RandomPoseBounds pose_bounds(xmin, xmax, ymin, ymax, zmin, zmax);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="keywordtype">double</span> cuboid_size_min = 0.01;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="keywordtype">double</span> cuboid_size_max = 0.03;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    rviz_visual_tools::RandomCuboidBounds cuboid_bounds(cuboid_size_min, cuboid_size_max);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    object_name = <span class="stringliteral">&quot;pick_target&quot;</span>;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;generateRandomCuboid(object_pose, x_depth, y_width, z_height, pose_bounds, cuboid_bounds);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishCollisionCuboid(object_pose, x_depth, y_width, z_height, object_name, rviz_visual_tools::RED);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishAxis(object_pose, rviz_visual_tools::MEDIUM);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;trigger();</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    <span class="keywordtype">bool</span> success = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    <span class="keywordtype">double</span> timeout = 5;  <span class="comment">// seconds</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    ros::Rate rate(100);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="keywordflow">while</span> (success &amp;&amp; !<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>-&gt;getPlanningScene()-&gt;knowsFrameTransform(object_name))</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    {</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;      rate.sleep();</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;      success = rate.cycleTime().toSec() &lt; timeout;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keywordflow">return</span> success;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;}</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160; </div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">  141</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator::mediate</a>(){</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;deleteAllMarkers();</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;ns is %s&quot;</span>, <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str());</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  MapConfigLoader map_config(*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str());</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  <span class="keyword">auto</span> cbd = <span class="keyword">static_cast&lt;</span><a class="code" href="classCuboid__reader.html">Cuboid_reader</a>*<span class="keyword">&gt;</span>(<a class="code" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a>.get())-&gt;cuboid_bin();</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  map_config.SetObjects(cbd);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <span class="keywordtype">float</span> object_offset = 0.02f;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;  tf2::Vector3 middle_pt(0,0,0);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  std::vector&lt;double&gt; x;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  std::vector&lt;double&gt; y;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  <span class="keywordflow">for</span>(<span class="keyword">auto</span>* ar: <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>){</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* r = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(ar);</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    tf2::Vector3 pos = r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin();</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    pos.setZ((pos.getZ()*2) +object_offset);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    tf2::Transform man_tf(r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getRotation(), pos);</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">manipulate_mapspace</a>(man_tf, r-&gt;<a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>());</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    map_config.Create(<a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    middle_pt+= pos;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;X: %f, Y: %f, Z: %f&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    tf2::Transform A = r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * r-&gt;<a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()[0];</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    tf2::Transform B = r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * r-&gt;<a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()[1];</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    tf2::Transform C = r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * r-&gt;<a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()[2];</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    tf2::Transform D = r-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>() * r-&gt;<a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()[3];</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    x.push_back(A.getOrigin().getX());</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    x.push_back(B.getOrigin().getX());</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    x.push_back(C.getOrigin().getX());</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    x.push_back(D.getOrigin().getX());</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    y.push_back(A.getOrigin().getY());</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    y.push_back(B.getOrigin().getY());</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    y.push_back(C.getOrigin().getY());</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    y.push_back(D.getOrigin().getY());</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160; </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    r-&gt;<a class="code" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">grasp_map_generator</a>()-&gt;SampleMap(<a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>.front());</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    <span class="keywordflow">for</span> (<span class="keyword">auto</span>* are: r-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()){</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;      <span class="keyword">auto</span> wmd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;      <span class="keyword">auto</span> w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(wmd-&gt;wing());</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;      pos.setX(w-&gt;world_tf().getOrigin().getX());</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;      pos.setY(w-&gt;world_tf().getOrigin().getY());</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;      man_tf.setRotation(w-&gt;world_tf().getRotation());</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;      man_tf.setOrigin(pos);</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;      <a class="code" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">manipulate_mapspace</a>(man_tf, w-&gt;size());</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;      map_config.Create(<a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>);</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;      middle_pt+= pos;</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;X: %f, Y: %f, Z: %f&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160; </div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;      A = w-&gt;world_tf() * w-&gt;bounds()[0];</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;      B = w-&gt;world_tf() * w-&gt;bounds()[1];</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;      C = w-&gt;world_tf() * w-&gt;bounds()[2];</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;      D = w-&gt;world_tf() * w-&gt;bounds()[3];</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;      x.push_back(A.getOrigin().getX());</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;      x.push_back(B.getOrigin().getX());</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;      x.push_back(C.getOrigin().getX());</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;      x.push_back(D.getOrigin().getX());</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;      y.push_back(A.getOrigin().getY());</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;      y.push_back(B.getOrigin().getY());</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;      y.push_back(C.getOrigin().getY());</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;      y.push_back(D.getOrigin().getY());</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;      r-&gt;<a class="code" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">grasp_map_generator</a>()-&gt;SampleMap(<a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>.front());</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    }</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  }</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  ROS_INFO_STREAM(<span class="stringliteral">&quot;number of maps: &quot;</span>&lt;&lt; <a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>.size());</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;  middle_pt/= <a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>.size();</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;X: %f, Y: %f, Z: %f&quot;</span>, middle_pt.getX(), middle_pt.getY(), middle_pt.getZ());</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keyword">auto</span> x_min = *std::min_element(x.begin(),x.end());</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keyword">auto</span> x_max = *std::max_element(x.begin(),x.end());</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  <span class="keyword">auto</span> y_min = *std::min_element(y.begin(),y.end());</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <span class="keyword">auto</span> y_max = *std::max_element(y.begin(),y.end());</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;width: %f&quot;</span>, x_max-x_min);</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  ROS_INFO(<span class="stringliteral">&quot;height: %f&quot;</span>, y_max-y_min);</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160; </div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;setAlpha(0.1);</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a>-&gt;Voxelize();</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160; </div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  <span class="keyword">auto</span> cod = <span class="keyword">static_cast&lt;</span><a class="code" href="classCuboid__reader.html">Cuboid_reader</a>*<span class="keyword">&gt;</span>(<a class="code" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a>.get())-&gt;cuboid_obstacle();</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;o:cod){</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a>-&gt;GetCuboidCollisions(o,<a class="code" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">voxel_environment_</a>);</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;  }</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a>-&gt;Voxelize(<span class="keyword">true</span>);</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    </div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160; </div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="comment">// -----------------------------------</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    <span class="comment">// Generate random object to grasp</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    geometry_msgs::Pose object_pose;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    <span class="keywordtype">double</span> object_x_depth;</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <span class="keywordtype">double</span> object_y_width;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    <span class="keywordtype">double</span> object_z_height;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    std::string object_name;</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">generateRandomCuboid</a>(object_name, object_pose, object_x_depth, object_y_width, object_z_height))</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    {</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Failed to add random cuboid ot planning scene&quot;</span>);</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    }</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160; </div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="comment">// -----------------------------------</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    <span class="comment">// Generate grasp candidates</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    std::vector&lt;moveit_grasps::GraspCandidatePtr&gt; grasp_candidates;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160; </div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="comment">// Configure the desired types of grasps</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;    moveit_grasps::TwoFingerGraspCandidateConfig grasp_generator_config =</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        moveit_grasps::TwoFingerGraspCandidateConfig();</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    grasp_generator_config.disableAll();</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    grasp_generator_config.enable_face_grasps_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    grasp_generator_config.generate_y_axis_grasps_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    grasp_generator_config.generate_x_axis_grasps_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    grasp_generator_config.generate_z_axis_grasps_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    <span class="keyword">auto</span> grasp_generator_ =std::make_shared&lt;moveit_grasps::TwoFingerGraspGenerator&gt;(<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>);</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160; </div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    <span class="comment">// Set the ideal grasp orientation for scoring</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    std::vector&lt;double&gt; ideal_grasp_rpy = { 3.14, 0.0, 0.0 };</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    grasp_generator_-&gt;setIdealTCPGraspPoseRPY(ideal_grasp_rpy);</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; </div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <span class="comment">// Set custom grasp score weights</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    <span class="keyword">auto</span> grasp_score_weights = std::make_shared&lt;moveit_grasps::TwoFingerGraspScoreWeights&gt;();</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    grasp_score_weights-&gt;orientation_x_score_weight_ = 2.0;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    grasp_score_weights-&gt;orientation_y_score_weight_ = 2.0;</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    grasp_score_weights-&gt;orientation_z_score_weight_ = 2.0;</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    grasp_score_weights-&gt;translation_x_score_weight_ = 1.0;</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    grasp_score_weights-&gt;translation_y_score_weight_ = 1.0;</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    grasp_score_weights-&gt;translation_z_score_weight_ = 1.0;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <span class="comment">// Finger gripper specific weights.</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    grasp_score_weights-&gt;depth_score_weight_ = 2.0;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    grasp_score_weights-&gt;width_score_weight_ = 2.0;</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="comment">// Assign the grasp score weights in the grasp_generator</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    grasp_generator_-&gt;setGraspScoreWeights(grasp_score_weights);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    <span class="keyword">auto</span> grasp_data_ = std::make_shared&lt;moveit_grasps::TwoFingerGraspData&gt;(*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <span class="stringliteral">&quot;hand_1&quot;</span>, <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;getRobotModel());</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="keywordflow">if</span> (!grasp_data_-&gt;loadGraspData(*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <span class="stringliteral">&quot;hand_1&quot;</span>))</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    {</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Failed to load Grasp Data parameters.&quot;</span>);</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;      exit(-1);</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    }</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160; </div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    grasp_generator_-&gt;setGraspCandidateConfig(grasp_generator_config);</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <span class="keywordflow">if</span> (!grasp_generator_-&gt;generateGrasps(<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;convertPose(object_pose), object_x_depth, object_y_width,</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;                                          object_z_height, grasp_data_, grasp_candidates))</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    {</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Grasp generator failed to generate any valid grasps&quot;</span>);</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    }</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160; </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    <span class="comment">// --------------------------------------------</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <span class="comment">// Generating a seed state for filtering grasps</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keyword">auto</span> seed_state = std::make_shared&lt;robot_state::RobotState&gt;(*<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;getSharedRobotState());</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    Eigen::Isometry3d eef_mount_grasp_pose =</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;convertPose(object_pose) * grasp_data_-&gt;tcp_to_eef_mount_.inverse();</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">getIKSolution</a>(<a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>-&gt;getJointModelGroup(<span class="stringliteral">&quot;panda_arm1&quot;</span>), eef_mount_grasp_pose, *seed_state, grasp_data_-&gt;parent_link_-&gt;getName()))</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    {</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;The ideal seed state is not reachable. Using start state as seed.&quot;</span>);</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    }</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160; </div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;    <span class="comment">// --------------------------------------------</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    <span class="comment">// Filtering grasps</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    <span class="comment">// Note: This step also solves for the grasp and pre-grasp states and stores them in grasp candidates)</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <span class="keywordtype">bool</span> filter_pregrasps = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;    <span class="keyword">auto</span> grasp_filter_ = std::make_shared&lt;moveit_grasps::TwoFingerGraspFilter&gt;(<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;getSharedRobotState(), <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>);</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;    <span class="keywordflow">if</span> (!grasp_filter_-&gt;filterGrasps(grasp_candidates, <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>, <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>-&gt;getJointModelGroup(<span class="stringliteral">&quot;panda_arm1&quot;</span>), seed_state, filter_pregrasps,</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                                     object_name))</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    {</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Filter grasps failed&quot;</span>);</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    }</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    <span class="keywordflow">if</span> (!grasp_filter_-&gt;removeInvalidAndFilter(grasp_candidates))</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    {</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Grasp filtering removed all grasps&quot;</span>);</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    }</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160; </div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <span class="comment">// Plan free-space approach, cartesian approach, lift and retreat trajectories</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    moveit_grasps::GraspCandidatePtr selected_grasp_candidate;</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    moveit_msgs::MotionPlanResponse pre_approach_plan;</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">planFullGrasp</a>(grasp_candidates, selected_grasp_candidate, pre_approach_plan, object_name))</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    {</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Failed to plan grasp motions&quot;</span>);</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    }</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160; </div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">visualizePick</a>(selected_grasp_candidate, pre_approach_plan);</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;}</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
+<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">  318</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">Moveit_grasp_mediator::visualizePick</a>(<span class="keyword">const</span> moveit_grasps::GraspCandidatePtr&amp; valid_grasp_candidate,</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;                     <span class="keyword">const</span> moveit_msgs::MotionPlanResponse&amp; pre_approach_plan)</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;  {</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    EigenSTL::vector_Isometry3d waypoints;</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    moveit_grasps::GraspGenerator::getGraspWaypoints(valid_grasp_candidate, waypoints);</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    <span class="comment">// Visualize waypoints</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishAxisLabeled(waypoints[0], <span class="stringliteral">&quot;pregrasp&quot;</span>);</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishAxisLabeled(waypoints[1], <span class="stringliteral">&quot;grasp&quot;</span>);</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishAxisLabeled(waypoints[2], <span class="stringliteral">&quot;lifted&quot;</span>);</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishAxisLabeled(waypoints[3], <span class="stringliteral">&quot;retreat&quot;</span>);</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;trigger();</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160; </div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    <span class="comment">// Get the pre and post grasp states</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;prompt(<span class="stringliteral">&quot;pre_grasp&quot;</span>);</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    robot_state::RobotStatePtr pre_grasp_state =</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;        std::make_shared&lt;robot_state::RobotState&gt;(*<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;getSharedRobotState());</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    valid_grasp_candidate-&gt;getPreGraspState(pre_grasp_state);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishRobotState(pre_grasp_state, rviz_visual_tools::ORANGE);</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    robot_state::RobotStatePtr grasp_state =</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;        std::make_shared&lt;robot_state::RobotState&gt;(*<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;getSharedRobotState());</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;getGraspStateClosed(grasp_state))</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    {</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;prompt(<span class="stringliteral">&quot;grasp&quot;</span>);</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishRobotState(grasp_state, rviz_visual_tools::YELLOW);</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    }</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;segmented_cartesian_traj_.size() &gt; 1 &amp;&amp;</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        valid_grasp_candidate-&gt;segmented_cartesian_traj_[1].size())</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    {</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;prompt(<span class="stringliteral">&quot;lift&quot;</span>);</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishRobotState(valid_grasp_candidate-&gt;segmented_cartesian_traj_[1].back(),</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;                                       rviz_visual_tools::BLUE);</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    }</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;segmented_cartesian_traj_.size() &gt; 2 &amp;&amp;</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;        valid_grasp_candidate-&gt;segmented_cartesian_traj_[2].size())</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    {</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;prompt(<span class="stringliteral">&quot;retreat&quot;</span>);</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishRobotState(valid_grasp_candidate-&gt;segmented_cartesian_traj_[2].back(),</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;                                       rviz_visual_tools::PURPLE);</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    }</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160; </div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;prompt(<span class="stringliteral">&quot;show free space approach&quot;</span>);</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;hideRobot();</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;trigger();</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160; </div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    <span class="keywordtype">bool</span> wait_for_animation = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishTrajectoryPath(pre_approach_plan.trajectory, pre_grasp_state, wait_for_animation);</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    ros::Duration(0.25).sleep();</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;segmented_cartesian_traj_.size() &gt; moveit_grasps::APPROACH)</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishTrajectoryPath(valid_grasp_candidate-&gt;segmented_cartesian_traj_[moveit_grasps::APPROACH],</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                                           valid_grasp_candidate-&gt;grasp_data_-&gt;arm_jmg_, wait_for_animation);</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    ros::Duration(0.25).sleep();</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160; </div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;segmented_cartesian_traj_.size() &gt; moveit_grasps::LIFT)</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishTrajectoryPath(valid_grasp_candidate-&gt;segmented_cartesian_traj_[moveit_grasps::LIFT],</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;                                           valid_grasp_candidate-&gt;grasp_data_-&gt;arm_jmg_, wait_for_animation);</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    ros::Duration(0.25).sleep();</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160; </div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    <span class="keywordflow">if</span> (valid_grasp_candidate-&gt;segmented_cartesian_traj_.size() &gt; moveit_grasps::RETREAT)</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;      <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishTrajectoryPath(valid_grasp_candidate-&gt;segmented_cartesian_traj_[moveit_grasps::RETREAT],</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;                                           valid_grasp_candidate-&gt;grasp_data_-&gt;arm_jmg_, wait_for_animation);</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    ros::Duration(0.25).sleep();</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;}</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160; </div>
+<div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">  382</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">Moveit_grasp_mediator::planFullGrasp</a>(std::vector&lt;moveit_grasps::GraspCandidatePtr&gt;&amp; grasp_candidates,</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;                     moveit_grasps::GraspCandidatePtr&amp; valid_grasp_candidate,</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;                     moveit_msgs::MotionPlanResponse&amp; pre_approach_plan, <span class="keyword">const</span> std::string&amp; object_name)</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;  {</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    moveit::core::RobotStatePtr current_state;</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    {</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;      boost::scoped_ptr&lt;planning_scene_monitor::LockedPlanningSceneRW&gt; ls(</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;          <span class="keyword">new</span> planning_scene_monitor::LockedPlanningSceneRW(<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>));</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;      current_state = std::make_shared&lt;robot_state::RobotState&gt;((*ls)-&gt;getCurrentState());</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    }</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160; </div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    std::shared_ptr&lt;moveit_grasps::GraspPlanner&gt;grasp_planner_ = std::make_shared&lt;moveit_grasps::GraspPlanner&gt;(<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>);</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160; </div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="comment">// MoveIt Grasps allows for a manual breakpoint debugging tool to be optionally passed in</span></div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    grasp_planner_-&gt;setWaitForNextStepCallback(boost::bind(&amp;<a class="code" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator::waitForNextStep</a>, <span class="keyword">this</span>, <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>, _1));</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160; </div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    <span class="keywordtype">bool</span> success = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    <span class="keywordflow">for</span> (; !grasp_candidates.empty(); grasp_candidates.erase(grasp_candidates.begin()))</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    {</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;      valid_grasp_candidate = grasp_candidates.front();</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;      valid_grasp_candidate-&gt;getPreGraspState(current_state);</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;      <span class="keywordflow">if</span> (!grasp_planner_-&gt;planApproachLiftRetreat(valid_grasp_candidate, current_state, <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>, <span class="keyword">false</span>,</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                                                   object_name))</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;      {</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;failed to plan approach lift retreat&quot;</span>);</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;        <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;      }</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160; </div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;      robot_state::RobotStatePtr pre_grasp_state =</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;          valid_grasp_candidate-&gt;segmented_cartesian_traj_[moveit_grasps::APPROACH].front();</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;      <span class="keywordflow">if</span> (!<a class="code" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">planPreApproach</a>(*pre_grasp_state, pre_approach_plan))</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;      {</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;failed to plan to pregrasp_state&quot;</span>);</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;        <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;      }</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160; </div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;      success = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;      <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;    }</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    <span class="keywordflow">return</span> success;</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;}</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160; </div>
+<div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">  424</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator::waitForNextStep</a>(<span class="keyword">const</span> moveit_visual_tools::MoveItVisualToolsPtr&amp; visual_tools, <span class="keyword">const</span> std::string&amp; prompt)</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;{</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;  visual_tools-&gt;prompt(prompt);</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;}</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160; </div>
+<div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">  429</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">Moveit_grasp_mediator::planPreApproach</a>(<span class="keyword">const</span> robot_state::RobotState&amp; goal_state, moveit_msgs::MotionPlanResponse&amp; pre_approach_plan)</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;  {</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;    planning_interface::MotionPlanRequest req;</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;    planning_interface::MotionPlanResponse res;</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160; </div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;    <span class="keywordtype">double</span> tolerance_above = 0.01;</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    <span class="keywordtype">double</span> tolerance_below = 0.01;</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <span class="comment">// req.planner_id = &quot;RRTConnectkConfigDefault&quot;;</span></div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    req.group_name = <span class="stringliteral">&quot;panda_1_arm1&quot;</span>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    req.num_planning_attempts = 5;</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    req.allowed_planning_time = 1.5;</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    moveit_msgs::Constraints goal =</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        kinematic_constraints::constructGoalConstraints(goal_state, <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>-&gt;getJointModelGroup(<span class="stringliteral">&quot;panda_arm1&quot;</span>), tolerance_below, tolerance_above);</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160; </div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    req.goal_constraints.push_back(goal);</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    boost::scoped_ptr&lt;planning_scene_monitor::LockedPlanningSceneRW&gt; ls(</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <span class="keyword">new</span> planning_scene_monitor::LockedPlanningSceneRW(<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>));</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160; </div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    <span class="comment">// ---------------------------------</span></div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;    <span class="comment">// Change the robot current state</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;    <span class="comment">// NOTE: We have to do this since Panda start configuration is in self collision.</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;    robot_state::RobotState rs = (*ls)-&gt;getCurrentState();</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    std::vector&lt;double&gt; starting_joint_values = { 0.0, -0.785, 0.0, -2.356, 0.0, 1.571, 0.785 };</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    std::vector&lt;std::string&gt; joint_names = { <span class="stringliteral">&quot;panda_1_joint1&quot;</span>, <span class="stringliteral">&quot;panda_1_joint2&quot;</span>, <span class="stringliteral">&quot;panda_1_joint3&quot;</span>, <span class="stringliteral">&quot;panda_1_joint4&quot;</span>,</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                                             <span class="stringliteral">&quot;panda_1_joint5&quot;</span>, <span class="stringliteral">&quot;panda_1_joint6&quot;</span>, <span class="stringliteral">&quot;panda_1_joint7&quot;</span> };</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;    <span class="comment">// arm_jmg_-&gt;getActiveJointModelNames();</span></div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    <span class="keywordflow">for</span> (std::size_t i = 0; i &lt; joint_names.size(); ++i)</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    {</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;      rs.setJointPositions(joint_names[i], &amp;starting_joint_values[i]);</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    }</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    rs.update();</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    robot_state::robotStateToRobotStateMsg(rs, req.start_state);</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    <span class="comment">// ---------------------------</span></div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160; </div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">planning_pipeline_</a>-&gt;generatePlan(*ls, req, res);</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;    <span class="keywordflow">if</span> (res.error_code_.val != res.error_code_.SUCCESS)</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;    {</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;      ROS_INFO( <span class="stringliteral">&quot;Failed to plan approach successfully&quot;</span>);</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;      <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    }</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160; </div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;    res.getMessage(pre_approach_plan);</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;}</div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160; </div>
+<div class="line"><a name="l00474"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">  474</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator::isStateValid</a>(<span class="keyword">const</span> planning_scene::PlanningScene* planning_scene,</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;                  <span class="keyword">const</span> moveit_visual_tools::MoveItVisualToolsPtr&amp; visual_tools, robot_state::RobotState* robot_state,</div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;                  <span class="keyword">const</span> robot_model::JointModelGroup* group, <span class="keyword">const</span> <span class="keywordtype">double</span>* ik_solution)</div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;{</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;  robot_state-&gt;setJointGroupPositions(group, ik_solution);</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;  robot_state-&gt;update();</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  <span class="keywordflow">return</span> !planning_scene-&gt;isStateColliding(*robot_state, group-&gt;getName());</div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;}</div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160; </div>
+<div class="line"><a name="l00483"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">  483</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">Moveit_grasp_mediator::getIKSolution</a>(<span class="keyword">const</span> moveit::core::JointModelGroup* arm_jmg, <span class="keyword">const</span> Eigen::Isometry3d&amp; target_pose,</div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;                     robot_state::RobotState&amp; solution, <span class="keyword">const</span> std::string&amp; link_name)</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;  {</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    boost::scoped_ptr&lt;planning_scene_monitor::LockedPlanningSceneRW&gt; ls(</div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        <span class="keyword">new</span> planning_scene_monitor::LockedPlanningSceneRW(<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>));</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160; </div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    moveit::core::GroupStateValidityCallbackFn constraint_fn = boost::bind(</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        &amp;<a class="code" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator::isStateValid</a>,<span class="keyword">this</span>, <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>planning_scene::PlanningSceneConstPtr&amp;<span class="keyword">&gt;</span>(*ls).get(), <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>, _1, _2, _3);</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160; </div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    <span class="comment">// seed IK call with current state</span></div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    solution = (*ls)-&gt;getCurrentState();</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160; </div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    <span class="comment">// Solve IK problem for arm</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;    <span class="comment">// disable explicit restarts to guarantee close solution if one exists</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">double</span> timeout = 0.1;</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <span class="keywordflow">return</span> solution.setFromIK(arm_jmg, target_pose, link_name, timeout, constraint_fn);</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;}</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160; </div>
+<div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">  501</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">Moveit_grasp_mediator::scene_setup</a>(){</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;        <span class="keywordflow">for</span>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* ar: <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>) ar-&gt;notify();</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;    <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;setAlpha(1.0);</div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;          <span class="keyword">auto</span> cbd = <span class="keyword">static_cast&lt;</span><a class="code" href="classCuboid__reader.html">Cuboid_reader</a>*<span class="keyword">&gt;</span>(<a class="code" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a>.get())-&gt;cuboid_bin();</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;    <span class="keyword">auto</span> cod = <span class="keyword">static_cast&lt;</span><a class="code" href="classCuboid__reader.html">Cuboid_reader</a>*<span class="keyword">&gt;</span>(<a class="code" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a>.get())-&gt;cuboid_obstacle();</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160; </div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;%li die cuboids&quot;</span>, cbd.size());</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;%li cuboids&quot;</span>, cod.size());</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160; </div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;o:cod){</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;      o.publishCOwait(<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>,<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>,rviz_visual_tools::GREY);</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;      <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;addCollisionObjects({o.getCoMsg()});</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;    }</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160; </div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;o:cbd){</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                <span class="comment">//o.publish(visual_tools_,rviz_visual_tools::GREEN);</span></div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                  <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;addCollisionObjects({o.getCoMsg()});</div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;          }</div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160; </div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;publishRobotState(<a class="code" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a>-&gt;getCurrentState());</div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;trigger();</div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        </div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;}</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160; </div>
+<div class="line"><a name="l00525"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">  525</a></span>&#160;<a class="code" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator::Moveit_grasp_mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub, std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; nh)</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        : <a class="code" href="classMoveit__mediator.html">Moveit_mediator</a>(objects, pub, nh)</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;    , robot_reader_(std::make_unique&lt;<a class="code" href="classRobot__reader.html">Robot_reader</a>&gt;(nh))</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;    , wing_reader_(std::make_unique&lt;<a class="code" href="classWing__reader.html">Wing_reader</a>&gt;(nh))</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;    , cuboid_reader_(std::make_unique&lt;<a class="code" href="classCuboid__reader.html">Cuboid_reader</a>&gt;(nh)) {</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;    <span class="comment">// , job_reader_(std::make_unique&lt;Job_reader&gt;(nh)) {</span></div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a> = std::make_shared&lt;moveit_visual_tools::MoveItVisualTools&gt;(</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>-&gt;getModelFrame(), <span class="stringliteral">&quot;/rviz_visual_tools&quot;</span>, <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>);</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;loadMarkerPub();</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;loadRemoteControl();</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;setPlanningSceneMonitor(<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>);</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160; </div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;loadRobotStatePub(<span class="stringliteral">&quot;/display_robot_state&quot;</span>);</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;setRobotStateTopic(<span class="stringliteral">&quot;/robot_state_publisher&quot;</span>);</div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;loadTrajectoryPub(<span class="stringliteral">&quot;/display_planned_path&quot;</span>);</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160; </div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;loadSharedRobotState();</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;enableBatchPublishing();</div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;deleteAllMarkers();</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;removeAllCollisionObjects();</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>-&gt;trigger();</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160; </div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;        <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/grasps_ns&quot;</span>, <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>);</div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;        <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a> = <span class="stringliteral">&quot;grasps_ns&quot;</span>;</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;ns is %s&quot;</span>, <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str());</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160; </div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;        <a class="code" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">planning_pipeline_</a> = std::make_shared&lt;planning_pipeline::PlanningPipeline&gt;(<a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>, *<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <span class="stringliteral">&quot;planning_plugin&quot;</span>, <span class="stringliteral">&quot;request_adapter&quot;</span>);</div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;        <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a> = std::make_shared&lt;VoxelManager&gt;(*<a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>, <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>.c_str() ,<a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>,<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>);</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160; </div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;        <span class="keyword">auto</span> rd = <a class="code" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">robot_reader_</a>-&gt;robot_data();</div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; rd.size() ;i++) <a class="code" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">connect_robots</a>(<span class="keyword">new</span> <a class="code" href="classMoveit__robot.html">Moveit_robot</a>(rd[i].name_, rd[i].pose_, rd[i].size_));</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;        <span class="comment">/*</span></div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="comment">        auto wd = static_cast&lt;Wing_reader*&gt;(wing_reader_.get())-&gt;wing_data();</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="comment">        for (int i = 0; i &lt; robots_.size(); i++){</span></div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="comment">            for(object_data&amp; w : wd[i].first){</span></div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="comment">                w.pose_ = robots_[i]-&gt;tf().inverse() * w.pose_;</span></div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="comment">            robots_[i]-&gt;set_observer_mask(static_cast&lt;wing_config&gt;(wd[i].second));</span></div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="comment">        set_wings(wd);    </span></div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="comment">        for (int i = 0; i &lt; robots_.size(); i++){</span></div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="comment">            std::bitset&lt;3&gt; bs = wd[i].second;</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="comment">            build_wings(bs, i);</span></div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="comment">        */</span></div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160; </div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span>* r : <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>)r-&gt;notify();</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160; </div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;        <a class="code" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a>();</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;        <a class="code" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">scene_setup</a>();</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;    };</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a1c5f2ad1dedf0b71711725e2d96c3b2d"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">Moveit_grasp_mediator::generateRandomCuboid</a></div><div class="ttdeci">bool generateRandomCuboid(std::string &amp;object_name, geometry_msgs::Pose &amp;object_pose, double &amp;x_depth, double &amp;y_width, double &amp;z_height)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00108">moveit_grasp_mediator.cpp:108</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa9b3d92f1177b7ed103400bd5e1aa558"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00008">moveit_grasp_mediator.cpp:8</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ad10c0b3b2e683870e784262123ba779c"><div class="ttname"><a href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">Moveit_robot::map</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00048">moveit_robot.h:48</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_a7b52336368bd778fafb637ca2f20fc04"><div class="ttname"><a href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">Moveit_robot::mgi_hand</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00044">moveit_robot.h:44</a></div></div>
+<div class="ttc" id="aclassRobot_html_aeb6c8c47edbcc561f15b00d551a045e6"><div class="ttname"><a href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot::observers</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; observers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00029">robot.h:29</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html"><div class="ttname"><a href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00013">wing_moveit_decorator.h:13</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a054489ae555d8ecd197b23d09e40be47"><div class="ttname"><a href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator::publish_tables</a></div><div class="ttdeci">void publish_tables()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00024">moveit_mediator.cpp:24</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ace031e7894f77a460ce5782a6e3160e8"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00141">moveit_grasp_mediator.cpp:141</a></div></div>
+<div class="ttc" id="aclassWing__reader_html"><div class="ttname"><a href="classWing__reader.html">Wing_reader</a></div><div class="ttdoc">Wing reader.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00014">wing_reader.h:14</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ac3d550e1db30b83e6f6bf25536dd5c78"><div class="ttname"><a href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">Moveit_mediator::mgi_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00061">moveit_mediator.h:61</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a2c03d26fbb07ddfce88c0134a269db26"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">Moveit_grasp_mediator::planning_pipeline_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_pipeline::PlanningPipeline &gt; planning_pipeline_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00025">moveit_grasp_mediator.h:25</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a61afc06c74fcadd24af49e74e69730cc"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">Moveit_grasp_mediator::grasp_ns_</a></div><div class="ttdeci">std::string grasp_ns_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00027">moveit_grasp_mediator.h:27</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_add410bc786e487285644dbbfd1cc4435"><div class="ttname"><a href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">Moveit_grasp_mediator::voxel_environment_</a></div><div class="ttdeci">boost::dynamic_bitset voxel_environment_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00028">moveit_grasp_mediator.h:28</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html"><div class="ttname"><a href="classCuboid__reader.html">Cuboid_reader</a></div><div class="ttdoc">Cuboid reader.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00017">cuboid_reader.h:17</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a9673dc2802ed32e576ff58bde8dc52eb"><div class="ttname"><a href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">Moveit_mediator::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00056">moveit_mediator.h:56</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a6ed9b1a3d7b66a75cc2f0c5712cf7a62"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">Moveit_grasp_mediator::cuboid_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_param_reader &gt; cuboid_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00035">moveit_grasp_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a306c73cd3d0772a033fca3677fa547cc"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">Moveit_grasp_mediator::manipulate_mapspace</a></div><div class="ttdeci">void manipulate_mapspace(tf2::Transform &amp;tf, tf2::Vector3 &amp;size)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00035">moveit_grasp_mediator.cpp:35</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_adb66e0ab29aa994a762ec03d501dff09"><div class="ttname"><a href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">Moveit_grasp_mediator::robot_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Robot_reader &gt; robot_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00033">moveit_grasp_mediator.h:33</a></div></div>
+<div class="ttc" id="amoveit__grasp__mediator_8h_html"><div class="ttname"><a href="moveit__grasp__mediator_8h.html">moveit_grasp_mediator.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aafcbc3db53825d13dacdf6417e207d84"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator::Moveit_grasp_mediator</a></div><div class="ttdeci">Moveit_grasp_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00525">moveit_grasp_mediator.cpp:525</a></div></div>
+<div class="ttc" id="awing__moveit__decorator_8h_html"><div class="ttname"><a href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a7358966adab0fea05c2587e492273cb0"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">Moveit_grasp_mediator::grasp_maps_</a></div><div class="ttdeci">std::vector&lt; GraspMap &gt; grasp_maps_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00029">moveit_grasp_mediator.h:29</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a4c349f21f00ee6ec4cbb290557fe6a39"><div class="ttname"><a href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">Moveit_mediator::psi_</a></div><div class="ttdeci">std::unique_ptr&lt; moveit::planning_interface::PlanningSceneInterface &gt; psi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00062">moveit_mediator.h:62</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ab9c8056fd38678f42c75119bc2b057e4"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator::waitForNextStep</a></div><div class="ttdeci">void waitForNextStep(const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, const std::string &amp;prompt)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00424">moveit_grasp_mediator.cpp:424</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ad2e01237a4927df1d71d99276e56761e"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">Moveit_grasp_mediator::planFullGrasp</a></div><div class="ttdeci">bool planFullGrasp(std::vector&lt; moveit_grasps::GraspCandidatePtr &gt; &amp;grasp_candidates, moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan, const std::string &amp;object_name)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00382">moveit_grasp_mediator.cpp:382</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aba249a3b9ac5f2b4c426de836eb7d6eb"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">Moveit_grasp_mediator::visualizePick</a></div><div class="ttdeci">void visualizePick(const moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, const moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00318">moveit_grasp_mediator.cpp:318</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a97f68aabffc7f663ab03927084044311"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator::isStateValid</a></div><div class="ttdeci">bool isStateValid(const planning_scene::PlanningScene *planning_scene, const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, robot_state::RobotState *robot_state, const robot_model::JointModelGroup *group, const double *ik_solution)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00474">moveit_grasp_mediator.cpp:474</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa285fd973936b65c68cfb19c054edfb5"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">Moveit_grasp_mediator::manipulate_grasp_data</a></div><div class="ttdeci">void manipulate_grasp_data(Moveit_robot *robot)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00049">moveit_grasp_mediator.cpp:49</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ae22e5102cea0d7c0ad9da4b2fad997f0"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">Moveit_grasp_mediator::voxel_manager_</a></div><div class="ttdeci">std::shared_ptr&lt; VoxelManager &gt; voxel_manager_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00026">moveit_grasp_mediator.h:26</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html"><div class="ttname"><a href="classMoveit__mediator.html">Moveit_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00054">moveit_mediator.h:54</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ae5368a1e8034689de7c2fd15c680b7e5"><div class="ttname"><a href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">Moveit_mediator::planning_scene_monitor_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_scene_monitor::PlanningSceneMonitor &gt; planning_scene_monitor_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00065">moveit_mediator.h:65</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa469150a38fcf4e8a3d9acde59e4b519"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">Moveit_grasp_mediator::getIKSolution</a></div><div class="ttdeci">bool getIKSolution(const moveit::core::JointModelGroup *arm_jmg, const Eigen::Isometry3d &amp;target_pose, robot_state::RobotState &amp;solution, const std::string &amp;link_name)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00483">moveit_grasp_mediator.cpp:483</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a64ae098f7cadad8237e663658f038663"><div class="ttname"><a href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">Abstract_robot::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00061">impl/abstract_robot.h:61</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ac3a9f2cfc74a1304a1faea5516252c28"><div class="ttname"><a href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">Moveit_robot::grasp_map_generator</a></div><div class="ttdeci">std::shared_ptr&lt; MapGenerator &gt; grasp_map_generator()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00045">moveit_robot.h:45</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a6f4a8f20841b33341c4991ee00fef75e"><div class="ttname"><a href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">Moveit_mediator::robot_model_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::core::RobotModel &gt; robot_model_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00057">moveit_mediator.h:57</a></div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aac9157796fc133cdab1b22ef66ef8889"><div class="ttname"><a href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">Moveit_mediator::mgi</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00087">moveit_mediator.h:87</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa27d054a12c40a0e4fe3e94da271df83"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">Moveit_grasp_mediator::planPreApproach</a></div><div class="ttdeci">bool planPreApproach(const robot_state::RobotState &amp;goal_state, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00429">moveit_grasp_mediator.cpp:429</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html"><div class="ttname"><a href="classRobot__reader.html">Robot_reader</a></div><div class="ttdoc">Robot reader.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00015">robot_reader.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_af4c5933ccfcbf7ca153a039ad00a865f"><div class="ttname"><a href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">Moveit_grasp_mediator::scene_setup</a></div><div class="ttdeci">void scene_setup()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00501">moveit_grasp_mediator.cpp:501</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_af2b6e5e089fbfc61afb5f0c25a320571"><div class="ttname"><a href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">Moveit_mediator::visual_tools_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit_visual_tools::MoveItVisualTools &gt; visual_tools_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00058">moveit_mediator.h:58</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__grasp__mediator_8h.html b/doc/html/moveit__grasp__mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..5324ae44c6d9de64b49886f8fd557c632de48c64
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h.html
@@ -0,0 +1,128 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_grasp_mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">moveit_grasp_mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__mediator_8h_source.html">impl/moveit_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+<code>#include &lt;gb_grasp/VoxelManager.h&gt;</code><br />
+<code>#include &lt;gb_grasp/GraspMap.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="cuboid__reader_8h_source.html">reader/cuboid_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="job__reader_8h_source.html">reader/job_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_grasp_mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__grasp__mediator_8h__incl.png" border="0" usemap="#moveit__grasp__mediator_8h" alt=""/></div>
+<map name="moveit__grasp__mediator_8h" id="moveit__grasp__mediator_8h">
+<area shape="rect" title=" " alt="" coords="931,5,1120,32"/>
+<area shape="rect" title=" " alt="" coords="1747,527,1826,553"/>
+<area shape="rect" title=" " alt="" coords="607,445,721,471"/>
+<area shape="rect" title=" " alt="" coords="305,445,437,471"/>
+<area shape="rect" title=" " alt="" coords="963,445,1037,471"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="1088,169,1275,196"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1706,348,1867,375"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="5708,259,5809,285"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="456,341,627,382"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="3744,80,3923,107"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="229,259,379,285"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="555,259,727,285"/>
+<area shape="rect" title=" " alt="" coords="6975,80,7164,107"/>
+<area shape="rect" title=" " alt="" coords="7188,80,7351,107"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="43,259,205,285"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1768,437,1917,479"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="803,259,963,285"/>
+<area shape="rect" title=" " alt="" coords="1088,259,1240,285"/>
+<area shape="rect" title=" " alt="" coords="1265,259,1397,285"/>
+<area shape="rect" title=" " alt="" coords="1421,259,1563,285"/>
+<area shape="rect" title=" " alt="" coords="6183,333,6375,389"/>
+<area shape="rect" title=" " alt="" coords="6399,341,6617,382"/>
+<area shape="rect" title=" " alt="" coords="6642,341,6849,382"/>
+<area shape="rect" title=" " alt="" coords="3570,333,3726,389"/>
+<area shape="rect" title=" " alt="" coords="5985,341,6159,382"/>
+<area shape="rect" title=" " alt="" coords="4589,341,4805,382"/>
+<area shape="rect" title=" " alt="" coords="1502,162,1671,203"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="5991,169,6145,196"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="6398,259,6618,285"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="5935,445,6105,471"/>
+<area shape="rect" title=" " alt="" coords="1695,162,1875,203"/>
+<area shape="rect" title=" " alt="" coords="1899,162,2079,203"/>
+<area shape="rect" title=" " alt="" coords="2103,162,2283,203"/>
+<area shape="rect" title=" " alt="" coords="2307,162,2487,203"/>
+<area shape="rect" title=" " alt="" coords="2511,155,2691,211"/>
+<area shape="rect" title=" " alt="" coords="2715,155,2895,211"/>
+<area shape="rect" title=" " alt="" coords="2920,162,3101,203"/>
+<area shape="rect" title=" " alt="" coords="3126,155,3309,211"/>
+<area shape="rect" title=" " alt="" coords="3333,162,3513,203"/>
+<area shape="rect" title=" " alt="" coords="3537,162,3717,203"/>
+<area shape="rect" title=" " alt="" coords="3741,162,3925,203"/>
+<area shape="rect" title=" " alt="" coords="3950,162,4135,203"/>
+<area shape="rect" title=" " alt="" coords="4160,162,4357,203"/>
+<area shape="rect" title=" " alt="" coords="4382,162,4637,203"/>
+<area shape="rect" title=" " alt="" coords="4661,162,4841,203"/>
+<area shape="rect" title=" " alt="" coords="4865,162,5073,203"/>
+<area shape="rect" title=" " alt="" coords="5097,162,5300,203"/>
+<area shape="rect" title=" " alt="" coords="5325,162,5505,203"/>
+<area shape="rect" title=" " alt="" coords="5529,162,5709,203"/>
+<area shape="rect" title=" " alt="" coords="5733,162,5915,203"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__grasp__mediator_8h__dep__incl.png" border="0" usemap="#moveit__grasp__mediator_8hdep" alt=""/></div>
+<map name="moveit__grasp__mediator_8hdep" id="moveit__grasp__mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="100,5,289,32"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,80,173,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,80,402,107"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__grasp__mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__grasp__mediator_8h__dep__incl.map b/doc/html/moveit__grasp__mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5f092b975f2ba2f5ad9db861e2f7fdbaf933b56d
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="moveit_grasp_mediator.h" name="moveit_grasp_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="100,5,289,32"/>
+<area shape="rect" id="node2" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,80,173,107"/>
+<area shape="rect" id="node3" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,80,402,107"/>
+</map>
diff --git a/doc/html/moveit__grasp__mediator_8h__dep__incl.md5 b/doc/html/moveit__grasp__mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..cd427597d90b0edaf6eaa1c50de4de993154fa60
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+961359527cf320d5a928fc1f84a34ac4
\ No newline at end of file
diff --git a/doc/html/moveit__grasp__mediator_8h__dep__incl.png b/doc/html/moveit__grasp__mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..d2f15f21aa802690377e7fb77a1d6deef2a205f8
Binary files /dev/null and b/doc/html/moveit__grasp__mediator_8h__dep__incl.png differ
diff --git a/doc/html/moveit__grasp__mediator_8h__incl.map b/doc/html/moveit__grasp__mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..3d27bb8fe21f9b0fc101c888ee9ea4bd2b99724a
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h__incl.map
@@ -0,0 +1,52 @@
+<map id="moveit_grasp_mediator.h" name="moveit_grasp_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="931,5,1120,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1747,527,1826,553"/>
+<area shape="rect" id="node3" title=" " alt="" coords="607,445,721,471"/>
+<area shape="rect" id="node4" title=" " alt="" coords="305,445,437,471"/>
+<area shape="rect" id="node5" title=" " alt="" coords="963,445,1037,471"/>
+<area shape="rect" id="node6" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="1088,169,1275,196"/>
+<area shape="rect" id="node7" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1706,348,1867,375"/>
+<area shape="rect" id="node9" href="$robot_8h.html" title=" " alt="" coords="5708,259,5809,285"/>
+<area shape="rect" id="node17" href="$abstract__param__reader_8h.html" title=" " alt="" coords="456,341,627,382"/>
+<area shape="rect" id="node21" href="$moveit__mediator_8h.html" title=" " alt="" coords="3744,80,3923,107"/>
+<area shape="rect" id="node46" href="$job__reader_8h.html" title=" " alt="" coords="229,259,379,285"/>
+<area shape="rect" id="node47" href="$cuboid__reader_8h.html" title=" " alt="" coords="555,259,727,285"/>
+<area shape="rect" id="node48" title=" " alt="" coords="6975,80,7164,107"/>
+<area shape="rect" id="node49" title=" " alt="" coords="7188,80,7351,107"/>
+<area shape="rect" id="node50" href="$robot__reader_8h.html" title=" " alt="" coords="43,259,205,285"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1768,437,1917,479"/>
+<area shape="rect" id="node16" href="$wing__reader_8h.html" title=" " alt="" coords="803,259,963,285"/>
+<area shape="rect" id="node18" title=" " alt="" coords="1088,259,1240,285"/>
+<area shape="rect" id="node19" title=" " alt="" coords="1265,259,1397,285"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1421,259,1563,285"/>
+<area shape="rect" id="node10" title=" " alt="" coords="6183,333,6375,389"/>
+<area shape="rect" id="node11" title=" " alt="" coords="6399,341,6617,382"/>
+<area shape="rect" id="node12" title=" " alt="" coords="6642,341,6849,382"/>
+<area shape="rect" id="node13" title=" " alt="" coords="3570,333,3726,389"/>
+<area shape="rect" id="node14" title=" " alt="" coords="5985,341,6159,382"/>
+<area shape="rect" id="node15" title=" " alt="" coords="4589,341,4805,382"/>
+<area shape="rect" id="node22" title=" " alt="" coords="1502,162,1671,203"/>
+<area shape="rect" id="node23" href="$moveit__robot_8h.html" title=" " alt="" coords="5991,169,6145,196"/>
+<area shape="rect" id="node24" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="6398,259,6618,285"/>
+<area shape="rect" id="node25" href="$collision__helper_8h.html" title=" " alt="" coords="5935,445,6105,471"/>
+<area shape="rect" id="node26" title=" " alt="" coords="1695,162,1875,203"/>
+<area shape="rect" id="node27" title=" " alt="" coords="1899,162,2079,203"/>
+<area shape="rect" id="node28" title=" " alt="" coords="2103,162,2283,203"/>
+<area shape="rect" id="node29" title=" " alt="" coords="2307,162,2487,203"/>
+<area shape="rect" id="node30" title=" " alt="" coords="2511,155,2691,211"/>
+<area shape="rect" id="node31" title=" " alt="" coords="2715,155,2895,211"/>
+<area shape="rect" id="node32" title=" " alt="" coords="2920,162,3101,203"/>
+<area shape="rect" id="node33" title=" " alt="" coords="3126,155,3309,211"/>
+<area shape="rect" id="node34" title=" " alt="" coords="3333,162,3513,203"/>
+<area shape="rect" id="node35" title=" " alt="" coords="3537,162,3717,203"/>
+<area shape="rect" id="node36" title=" " alt="" coords="3741,162,3925,203"/>
+<area shape="rect" id="node37" title=" " alt="" coords="3950,162,4135,203"/>
+<area shape="rect" id="node38" title=" " alt="" coords="4160,162,4357,203"/>
+<area shape="rect" id="node39" title=" " alt="" coords="4382,162,4637,203"/>
+<area shape="rect" id="node40" title=" " alt="" coords="4661,162,4841,203"/>
+<area shape="rect" id="node41" title=" " alt="" coords="4865,162,5073,203"/>
+<area shape="rect" id="node42" title=" " alt="" coords="5097,162,5300,203"/>
+<area shape="rect" id="node43" title=" " alt="" coords="5325,162,5505,203"/>
+<area shape="rect" id="node44" title=" " alt="" coords="5529,162,5709,203"/>
+<area shape="rect" id="node45" title=" " alt="" coords="5733,162,5915,203"/>
+</map>
diff --git a/doc/html/moveit__grasp__mediator_8h__incl.md5 b/doc/html/moveit__grasp__mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..6d0e07efe5ad9970d7a00b2328930f8ee2e951e0
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h__incl.md5
@@ -0,0 +1 @@
+f36638e3d9320ea872b991ec5cf363d9
\ No newline at end of file
diff --git a/doc/html/moveit__grasp__mediator_8h__incl.png b/doc/html/moveit__grasp__mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b07030219aa7218a74814c8284829539bdfe9da2
Binary files /dev/null and b/doc/html/moveit__grasp__mediator_8h__incl.png differ
diff --git a/doc/html/moveit__grasp__mediator_8h_source.html b/doc/html/moveit__grasp__mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..e1e4c4b55906190bb699072fef552a9e3d462967
--- /dev/null
+++ b/doc/html/moveit__grasp__mediator_8h_source.html
@@ -0,0 +1,138 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_grasp_mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_grasp_mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__grasp__mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MOVEIT_GRASP_MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MOVEIT_GRASP_MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__mediator_8h.html">impl/moveit_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/VoxelManager.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/GraspMap.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cuboid__reader_8h.html">reader/cuboid_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="job__reader_8h.html">reader/job_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html">   23</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a> : <span class="keyword">public</span> <a class="code" href="classMoveit__mediator.html">Moveit_mediator</a>{</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">   25</a></span>&#160;    std::shared_ptr&lt;planning_pipeline::PlanningPipeline&gt; <a class="code" href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">planning_pipeline_</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">   26</a></span>&#160;    std::shared_ptr&lt;VoxelManager&gt; <a class="code" href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">voxel_manager_</a>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">   27</a></span>&#160;    std::string <a class="code" href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">grasp_ns_</a>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">   28</a></span>&#160;    boost::dynamic_bitset&lt;&gt; <a class="code" href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">voxel_environment_</a>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">   29</a></span>&#160;    std::vector&lt;GraspMap&gt; <a class="code" href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">grasp_maps_</a>;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="comment">// Readers </span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">   33</a></span>&#160;    std::unique_ptr&lt;Robot_reader&gt; <a class="code" href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">robot_reader_</a>;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">   34</a></span>&#160;    std::unique_ptr&lt;Abstract_param_reader&gt; <a class="code" href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">wing_reader_</a>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">   35</a></span>&#160;    std::unique_ptr&lt;Abstract_param_reader&gt; <a class="code" href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">cuboid_reader_</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">   36</a></span>&#160;    std::unique_ptr&lt;Job_reader&gt; <a class="code" href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">job_reader_</a>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub, std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; nh);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">mediate</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">manipulate_grasp_data</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>* robot);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">scene_setup</a>();</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">manipulate_mapspace</a>(tf2::Transform&amp; tf, tf2::Vector3&amp; size);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">generateRandomCuboid</a>(std::string&amp; object_name, geometry_msgs::Pose&amp; object_pose, <span class="keywordtype">double</span>&amp; x_depth, <span class="keywordtype">double</span>&amp; y_width, <span class="keywordtype">double</span>&amp; z_height);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">getIKSolution</a>(<span class="keyword">const</span> moveit::core::JointModelGroup* arm_jmg, <span class="keyword">const</span> Eigen::Isometry3d&amp; target_pose, robot_state::RobotState&amp; solution, <span class="keyword">const</span> std::string&amp; link_name);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">planFullGrasp</a>(std::vector&lt;moveit_grasps::GraspCandidatePtr&gt;&amp; grasp_candidates,</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;                     moveit_grasps::GraspCandidatePtr&amp; valid_grasp_candidate,</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                     moveit_msgs::MotionPlanResponse&amp; pre_approach_plan, <span class="keyword">const</span> std::string&amp; object_name);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">visualizePick</a>(<span class="keyword">const</span> moveit_grasps::GraspCandidatePtr&amp; valid_grasp_candidate,</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                     <span class="keyword">const</span> moveit_msgs::MotionPlanResponse&amp; pre_approach_plan);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">waitForNextStep</a>(<span class="keyword">const</span> moveit_visual_tools::MoveItVisualToolsPtr&amp; visual_tools, <span class="keyword">const</span> std::string&amp; prompt);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">planPreApproach</a>(<span class="keyword">const</span> robot_state::RobotState&amp; goal_state, moveit_msgs::MotionPlanResponse&amp; pre_approach_plan);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">isStateValid</a>(<span class="keyword">const</span> planning_scene::PlanningScene* planning_scene,</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                  <span class="keyword">const</span> moveit_visual_tools::MoveItVisualToolsPtr&amp; visual_tools, robot_state::RobotState* robot_state,</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                  <span class="keyword">const</span> robot_model::JointModelGroup* group, <span class="keyword">const</span> <span class="keywordtype">double</span>* ik_solution);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;};</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a1c5f2ad1dedf0b71711725e2d96c3b2d"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a1c5f2ad1dedf0b71711725e2d96c3b2d">Moveit_grasp_mediator::generateRandomCuboid</a></div><div class="ttdeci">bool generateRandomCuboid(std::string &amp;object_name, geometry_msgs::Pose &amp;object_pose, double &amp;x_depth, double &amp;y_width, double &amp;z_height)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00108">moveit_grasp_mediator.cpp:108</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa9b3d92f1177b7ed103400bd5e1aa558"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa9b3d92f1177b7ed103400bd5e1aa558">Moveit_grasp_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00008">moveit_grasp_mediator.cpp:8</a></div></div>
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="acuboid__reader_8h_html"><div class="ttname"><a href="cuboid__reader_8h.html">cuboid_reader.h</a></div></div>
+<div class="ttc" id="ajob__reader_8h_html"><div class="ttname"><a href="job__reader_8h.html">job_reader.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ace031e7894f77a460ce5782a6e3160e8"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ace031e7894f77a460ce5782a6e3160e8">Moveit_grasp_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00141">moveit_grasp_mediator.cpp:141</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a2c03d26fbb07ddfce88c0134a269db26"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a2c03d26fbb07ddfce88c0134a269db26">Moveit_grasp_mediator::planning_pipeline_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_pipeline::PlanningPipeline &gt; planning_pipeline_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00025">moveit_grasp_mediator.h:25</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a61afc06c74fcadd24af49e74e69730cc"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a61afc06c74fcadd24af49e74e69730cc">Moveit_grasp_mediator::grasp_ns_</a></div><div class="ttdeci">std::string grasp_ns_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00027">moveit_grasp_mediator.h:27</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html"><div class="ttname"><a href="classMoveit__grasp__mediator.html">Moveit_grasp_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00023">moveit_grasp_mediator.h:23</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_add410bc786e487285644dbbfd1cc4435"><div class="ttname"><a href="classMoveit__grasp__mediator.html#add410bc786e487285644dbbfd1cc4435">Moveit_grasp_mediator::voxel_environment_</a></div><div class="ttdeci">boost::dynamic_bitset voxel_environment_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00028">moveit_grasp_mediator.h:28</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a6ed9b1a3d7b66a75cc2f0c5712cf7a62"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a6ed9b1a3d7b66a75cc2f0c5712cf7a62">Moveit_grasp_mediator::cuboid_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_param_reader &gt; cuboid_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00035">moveit_grasp_mediator.h:35</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ada64005701a160ab15e54664a0a9f118"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ada64005701a160ab15e54664a0a9f118">Moveit_grasp_mediator::job_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Job_reader &gt; job_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00036">moveit_grasp_mediator.h:36</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a306c73cd3d0772a033fca3677fa547cc"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a306c73cd3d0772a033fca3677fa547cc">Moveit_grasp_mediator::manipulate_mapspace</a></div><div class="ttdeci">void manipulate_mapspace(tf2::Transform &amp;tf, tf2::Vector3 &amp;size)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00035">moveit_grasp_mediator.cpp:35</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_adb66e0ab29aa994a762ec03d501dff09"><div class="ttname"><a href="classMoveit__grasp__mediator.html#adb66e0ab29aa994a762ec03d501dff09">Moveit_grasp_mediator::robot_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Robot_reader &gt; robot_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00033">moveit_grasp_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aafcbc3db53825d13dacdf6417e207d84"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aafcbc3db53825d13dacdf6417e207d84">Moveit_grasp_mediator::Moveit_grasp_mediator</a></div><div class="ttdeci">Moveit_grasp_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00525">moveit_grasp_mediator.cpp:525</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a7358966adab0fea05c2587e492273cb0"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a7358966adab0fea05c2587e492273cb0">Moveit_grasp_mediator::grasp_maps_</a></div><div class="ttdeci">std::vector&lt; GraspMap &gt; grasp_maps_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00029">moveit_grasp_mediator.h:29</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ab9c8056fd38678f42c75119bc2b057e4"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ab9c8056fd38678f42c75119bc2b057e4">Moveit_grasp_mediator::waitForNextStep</a></div><div class="ttdeci">void waitForNextStep(const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, const std::string &amp;prompt)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00424">moveit_grasp_mediator.cpp:424</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ad2e01237a4927df1d71d99276e56761e"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ad2e01237a4927df1d71d99276e56761e">Moveit_grasp_mediator::planFullGrasp</a></div><div class="ttdeci">bool planFullGrasp(std::vector&lt; moveit_grasps::GraspCandidatePtr &gt; &amp;grasp_candidates, moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan, const std::string &amp;object_name)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00382">moveit_grasp_mediator.cpp:382</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aba249a3b9ac5f2b4c426de836eb7d6eb"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aba249a3b9ac5f2b4c426de836eb7d6eb">Moveit_grasp_mediator::visualizePick</a></div><div class="ttdeci">void visualizePick(const moveit_grasps::GraspCandidatePtr &amp;valid_grasp_candidate, const moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00318">moveit_grasp_mediator.cpp:318</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a97f68aabffc7f663ab03927084044311"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a97f68aabffc7f663ab03927084044311">Moveit_grasp_mediator::isStateValid</a></div><div class="ttdeci">bool isStateValid(const planning_scene::PlanningScene *planning_scene, const moveit_visual_tools::MoveItVisualToolsPtr &amp;visual_tools, robot_state::RobotState *robot_state, const robot_model::JointModelGroup *group, const double *ik_solution)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00474">moveit_grasp_mediator.cpp:474</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa285fd973936b65c68cfb19c054edfb5"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa285fd973936b65c68cfb19c054edfb5">Moveit_grasp_mediator::manipulate_grasp_data</a></div><div class="ttdeci">void manipulate_grasp_data(Moveit_robot *robot)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00049">moveit_grasp_mediator.cpp:49</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_ae22e5102cea0d7c0ad9da4b2fad997f0"><div class="ttname"><a href="classMoveit__grasp__mediator.html#ae22e5102cea0d7c0ad9da4b2fad997f0">Moveit_grasp_mediator::voxel_manager_</a></div><div class="ttdeci">std::shared_ptr&lt; VoxelManager &gt; voxel_manager_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00026">moveit_grasp_mediator.h:26</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html"><div class="ttname"><a href="classMoveit__mediator.html">Moveit_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00054">moveit_mediator.h:54</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa469150a38fcf4e8a3d9acde59e4b519"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa469150a38fcf4e8a3d9acde59e4b519">Moveit_grasp_mediator::getIKSolution</a></div><div class="ttdeci">bool getIKSolution(const moveit::core::JointModelGroup *arm_jmg, const Eigen::Isometry3d &amp;target_pose, robot_state::RobotState &amp;solution, const std::string &amp;link_name)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00483">moveit_grasp_mediator.cpp:483</a></div></div>
+<div class="ttc" id="amoveit__mediator_8h_html"><div class="ttname"><a href="moveit__mediator_8h.html">moveit_mediator.h</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_a0807f49aeb0b5a21b2f9ce52a9d690bf"><div class="ttname"><a href="classMoveit__grasp__mediator.html#a0807f49aeb0b5a21b2f9ce52a9d690bf">Moveit_grasp_mediator::wing_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_param_reader &gt; wing_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8h_source.html#l00034">moveit_grasp_mediator.h:34</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_aa27d054a12c40a0e4fe3e94da271df83"><div class="ttname"><a href="classMoveit__grasp__mediator.html#aa27d054a12c40a0e4fe3e94da271df83">Moveit_grasp_mediator::planPreApproach</a></div><div class="ttdeci">bool planPreApproach(const robot_state::RobotState &amp;goal_state, moveit_msgs::MotionPlanResponse &amp;pre_approach_plan)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00429">moveit_grasp_mediator.cpp:429</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassMoveit__grasp__mediator_html_af4c5933ccfcbf7ca153a039ad00a865f"><div class="ttname"><a href="classMoveit__grasp__mediator.html#af4c5933ccfcbf7ca153a039ad00a865f">Moveit_grasp_mediator::scene_setup</a></div><div class="ttdeci">void scene_setup()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__grasp__mediator_8cpp_source.html#l00501">moveit_grasp_mediator.cpp:501</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__mediator_8cpp.html b/doc/html/moveit__mediator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..671f3e1d6d3a7b766fca4eff1ee800ea77e0f1b4
--- /dev/null
+++ b/doc/html/moveit__mediator_8cpp.html
@@ -0,0 +1,163 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_mediator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<div class="title">moveit_mediator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="moveit__mediator_8h_source.html">impl/moveit_mediator.h</a>&quot;</code><br />
+<code>#include &lt;thread&gt;</code><br />
+<code>#include &lt;mutex&gt;</code><br />
+<code>#include &lt;algorithm&gt;</code><br />
+<code>#include &lt;gb_grasp/MapGenerator.h&gt;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_mediator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__mediator_8cpp__incl.png" border="0" usemap="#moveit__mediator_8cpp" alt=""/></div>
+<map name="moveit__mediator_8cpp" id="moveit__mediator_8cpp">
+<area shape="rect" title=" " alt="" coords="3068,5,3229,32"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="2870,80,3049,107"/>
+<area shape="rect" title=" " alt="" coords="5,259,196,285"/>
+<area shape="rect" title=" " alt="" coords="3073,80,3137,107"/>
+<area shape="rect" title=" " alt="" coords="3161,80,3225,107"/>
+<area shape="rect" title=" " alt="" coords="3249,80,3334,107"/>
+<area shape="rect" title=" " alt="" coords="3358,80,3417,107"/>
+<area shape="rect" title=" " alt="" coords="809,527,888,553"/>
+<area shape="rect" title=" " alt="" coords="1350,333,1542,389"/>
+<area shape="rect" title=" " alt="" coords="1566,341,1785,382"/>
+<area shape="rect" title=" " alt="" coords="1809,341,2016,382"/>
+<area shape="rect" title=" " alt="" coords="2041,341,2214,382"/>
+<area shape="rect" title=" " alt="" coords="727,333,883,389"/>
+<area shape="rect" title=" " alt="" coords="1009,341,1225,382"/>
+<area shape="rect" title=" " alt="" coords="1553,162,1723,203"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="414,169,601,196"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="489,348,651,375"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="949,259,1050,285"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="211,169,366,196"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="1452,259,1672,285"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="764,445,933,471"/>
+<area shape="rect" title=" " alt="" coords="1747,162,1927,203"/>
+<area shape="rect" title=" " alt="" coords="1951,162,2131,203"/>
+<area shape="rect" title=" " alt="" coords="2155,162,2335,203"/>
+<area shape="rect" title=" " alt="" coords="2359,162,2539,203"/>
+<area shape="rect" title=" " alt="" coords="2563,155,2743,211"/>
+<area shape="rect" title=" " alt="" coords="2767,155,2947,211"/>
+<area shape="rect" title=" " alt="" coords="2971,162,3153,203"/>
+<area shape="rect" title=" " alt="" coords="3177,155,3360,211"/>
+<area shape="rect" title=" " alt="" coords="3384,162,3564,203"/>
+<area shape="rect" title=" " alt="" coords="3588,162,3768,203"/>
+<area shape="rect" title=" " alt="" coords="3793,162,3977,203"/>
+<area shape="rect" title=" " alt="" coords="4001,162,4187,203"/>
+<area shape="rect" title=" " alt="" coords="4211,162,4409,203"/>
+<area shape="rect" title=" " alt="" coords="4433,162,4688,203"/>
+<area shape="rect" title=" " alt="" coords="4712,162,4892,203"/>
+<area shape="rect" title=" " alt="" coords="4917,162,5125,203"/>
+<area shape="rect" title=" " alt="" coords="5149,162,5351,203"/>
+<area shape="rect" title=" " alt="" coords="5376,162,5556,203"/>
+<area shape="rect" title=" " alt="" coords="5580,162,5760,203"/>
+<area shape="rect" title=" " alt="" coords="5784,162,5967,203"/>
+<area shape="rect" title=" " alt="" coords="5991,155,6216,211"/>
+<area shape="rect" title=" " alt="" coords="6241,155,6414,211"/>
+<area shape="rect" title=" " alt="" coords="6439,155,6624,211"/>
+<area shape="rect" title=" " alt="" coords="6648,162,6847,203"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="1021,445,1170,471"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="1205,445,1377,471"/>
+<area shape="rect" title=" " alt="" coords="6871,169,6941,196"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="590,437,739,479"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="322,259,482,285"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__mediator_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a07c246a655c93c294c5895333d59f9fb"><td class="memItemLeft" align="right" valign="top">thread_local moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">etsg_</a></td></tr>
+<tr class="separator:a07c246a655c93c294c5895333d59f9fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83e709b064acbbdd1ba1382937d57cec"><td class="memItemLeft" align="right" valign="top">thread_local moveit::task_constructor::Task&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">task__</a></td></tr>
+<tr class="separator:a83e709b064acbbdd1ba1382937d57cec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b3de631e576c4bb7c9567578f6f4ad2"><td class="memItemLeft" align="right" valign="top">std::mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">task_writing</a></td></tr>
+<tr class="separator:a3b3de631e576c4bb7c9567578f6f4ad2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a07c246a655c93c294c5895333d59f9fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07c246a655c93c294c5895333d59f9fb">&#9670;&nbsp;</a></span>etsg_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">thread_local moveit_task_constructor_msgs::ExecuteTaskSolutionGoal etsg_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00009">9</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a83e709b064acbbdd1ba1382937d57cec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83e709b064acbbdd1ba1382937d57cec">&#9670;&nbsp;</a></span>task__</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">thread_local moveit::task_constructor::Task task__</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00008">8</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3b3de631e576c4bb7c9567578f6f4ad2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b3de631e576c4bb7c9567578f6f4ad2">&#9670;&nbsp;</a></span>task_writing</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::mutex task_writing</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="moveit__mediator_8cpp_source.html#l00011">11</a> of file <a class="el" href="moveit__mediator_8cpp_source.html">moveit_mediator.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__mediator_8cpp__incl.map b/doc/html/moveit__mediator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..1b275aaefb02e5d65fff6ba367e8041dc891364b
--- /dev/null
+++ b/doc/html/moveit__mediator_8cpp__incl.map
@@ -0,0 +1,52 @@
+<map id="moveit_mediator.cpp" name="moveit_mediator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="3068,5,3229,32"/>
+<area shape="rect" id="node2" href="$moveit__mediator_8h.html" title=" " alt="" coords="2870,80,3049,107"/>
+<area shape="rect" id="node17" title=" " alt="" coords="5,259,196,285"/>
+<area shape="rect" id="node47" title=" " alt="" coords="3073,80,3137,107"/>
+<area shape="rect" id="node48" title=" " alt="" coords="3161,80,3225,107"/>
+<area shape="rect" id="node49" title=" " alt="" coords="3249,80,3334,107"/>
+<area shape="rect" id="node50" title=" " alt="" coords="3358,80,3417,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="809,527,888,553"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1350,333,1542,389"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1566,341,1785,382"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1809,341,2016,382"/>
+<area shape="rect" id="node7" title=" " alt="" coords="2041,341,2214,382"/>
+<area shape="rect" id="node8" title=" " alt="" coords="727,333,883,389"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1009,341,1225,382"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1553,162,1723,203"/>
+<area shape="rect" id="node11" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="414,169,601,196"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="489,348,651,375"/>
+<area shape="rect" id="node14" href="$robot_8h.html" title=" " alt="" coords="949,259,1050,285"/>
+<area shape="rect" id="node16" href="$moveit__robot_8h.html" title=" " alt="" coords="211,169,366,196"/>
+<area shape="rect" id="node18" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="1452,259,1672,285"/>
+<area shape="rect" id="node19" href="$collision__helper_8h.html" title=" " alt="" coords="764,445,933,471"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1747,162,1927,203"/>
+<area shape="rect" id="node21" title=" " alt="" coords="1951,162,2131,203"/>
+<area shape="rect" id="node22" title=" " alt="" coords="2155,162,2335,203"/>
+<area shape="rect" id="node23" title=" " alt="" coords="2359,162,2539,203"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2563,155,2743,211"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2767,155,2947,211"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2971,162,3153,203"/>
+<area shape="rect" id="node27" title=" " alt="" coords="3177,155,3360,211"/>
+<area shape="rect" id="node28" title=" " alt="" coords="3384,162,3564,203"/>
+<area shape="rect" id="node29" title=" " alt="" coords="3588,162,3768,203"/>
+<area shape="rect" id="node30" title=" " alt="" coords="3793,162,3977,203"/>
+<area shape="rect" id="node31" title=" " alt="" coords="4001,162,4187,203"/>
+<area shape="rect" id="node32" title=" " alt="" coords="4211,162,4409,203"/>
+<area shape="rect" id="node33" title=" " alt="" coords="4433,162,4688,203"/>
+<area shape="rect" id="node34" title=" " alt="" coords="4712,162,4892,203"/>
+<area shape="rect" id="node35" title=" " alt="" coords="4917,162,5125,203"/>
+<area shape="rect" id="node36" title=" " alt="" coords="5149,162,5351,203"/>
+<area shape="rect" id="node37" title=" " alt="" coords="5376,162,5556,203"/>
+<area shape="rect" id="node38" title=" " alt="" coords="5580,162,5760,203"/>
+<area shape="rect" id="node39" title=" " alt="" coords="5784,162,5967,203"/>
+<area shape="rect" id="node40" title=" " alt="" coords="5991,155,6216,211"/>
+<area shape="rect" id="node41" title=" " alt="" coords="6241,155,6414,211"/>
+<area shape="rect" id="node42" title=" " alt="" coords="6439,155,6624,211"/>
+<area shape="rect" id="node43" title=" " alt="" coords="6648,162,6847,203"/>
+<area shape="rect" id="node44" href="$job__reader_8h.html" title=" " alt="" coords="1021,445,1170,471"/>
+<area shape="rect" id="node45" href="$cuboid__reader_8h.html" title=" " alt="" coords="1205,445,1377,471"/>
+<area shape="rect" id="node46" title=" " alt="" coords="6871,169,6941,196"/>
+<area shape="rect" id="node13" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="590,437,739,479"/>
+<area shape="rect" id="node15" href="$wing__reader_8h.html" title=" " alt="" coords="322,259,482,285"/>
+</map>
diff --git a/doc/html/moveit__mediator_8cpp__incl.md5 b/doc/html/moveit__mediator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..325c729fbbe6aa7ddeb487925463c7d35a508b8a
--- /dev/null
+++ b/doc/html/moveit__mediator_8cpp__incl.md5
@@ -0,0 +1 @@
+e87dd4df156cee8457c50e72d11e8083
\ No newline at end of file
diff --git a/doc/html/moveit__mediator_8cpp__incl.png b/doc/html/moveit__mediator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..758297700e2f6a5cb033beff1afb1f87da462f76
Binary files /dev/null and b/doc/html/moveit__mediator_8cpp__incl.png differ
diff --git a/doc/html/moveit__mediator_8cpp_source.html b/doc/html/moveit__mediator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b1c77fa9df507aec23473496510c695338cb120
--- /dev/null
+++ b/doc/html/moveit__mediator_8cpp_source.html
@@ -0,0 +1,1384 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_mediator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_mediator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__mediator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__mediator_8h.html">impl/moveit_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;thread&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &lt;mutex&gt;</span> </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/MapGenerator.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">    8</a></span>&#160;thread_local moveit::task_constructor::Task <a class="code" href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">task__</a>;</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">    9</a></span>&#160;thread_local moveit_task_constructor_msgs::ExecuteTaskSolutionGoal <a class="code" href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">etsg_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">   11</a></span>&#160;std::mutex <a class="code" href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">task_writing</a>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">//std::mutex publish;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">   14</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator::connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.push_back(robot);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;%s connected...&quot;</span>, robot-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>().c_str());</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(robot);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>).c_str(), std::vector&lt;uint8_t&gt;()));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span> name: mr-&gt;<a class="code" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>()-&gt;getLinkNames()) <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(name.c_str(), std::vector&lt;uint8_t&gt;()));</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span> name: mr-&gt;<a class="code" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">mgi_hand</a>()-&gt;getLinkNames()) <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(name.c_str(), std::vector&lt;uint8_t&gt;()));</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;}</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">   24</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator::publish_tables</a>(){</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    ros::WallDuration sleep_time(1.0);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>.size();i++){</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[i]);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                <span class="comment">/*</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment">                moveit_msgs::CollisionObject table;</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment">                table.id = ceti-&gt;map().at(&quot;base&quot;).c_str();</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">                table.header.frame_id = &quot;world&quot;;</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="comment">                table.header.stamp = ros::Time::now();</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">                table.primitives.resize(1);</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">                table.primitives[0].type = table.primitives[0].BOX;</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">                table.primitives[0].dimensions.resize(3);</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment">                table.primitives[0].dimensions[0] = ceti-&gt;size().getX();</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">                table.primitives[0].dimensions[1] = ceti-&gt;size().getY();</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">                table.primitives[0].dimensions[2] = ceti-&gt;tf().getOrigin().getZ() * 2;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">                table.primitive_poses.resize(1);</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">                table.primitive_poses[0].position.x = ceti-&gt;tf().getOrigin().getX();</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">                table.primitive_poses[0].position.y = ceti-&gt;tf().getOrigin().getY();</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">                table.primitive_poses[0].position.z = ceti-&gt;tf().getOrigin().getZ();</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">                table.primitive_poses[0].orientation.x = ceti-&gt;tf().getRotation().getX();</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">                table.primitive_poses[0].orientation.y = ceti-&gt;tf().getRotation().getY();</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">                table.primitive_poses[0].orientation.z = ceti-&gt;tf().getRotation().getZ();</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">                table.primitive_poses[0].orientation.w = ceti-&gt;tf().getRotation().getW();</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">                table.operation = table.ADD;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">                */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                <span class="comment">//psi_-&gt;applyCollisionObject(table);</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : ceti-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()) {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;            <a class="code" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>* wmd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;            <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;applyCollisionObject(*wmd-&gt;<a class="code" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>());</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(wmd-&gt;<a class="code" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>()-&gt;id.c_str(), std::vector&lt;uint8_t&gt;()));</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;            sleep_time.sleep();</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        }</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    }</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;}</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">   61</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator::check_collision</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keyword">auto</span> env = <a class="code" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a>-&gt;getCollisionEnvNonConst();</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="classCollision__helper.html">Collision_helper</a>* ch = <span class="keyword">static_cast&lt;</span><a class="code" href="classCollision__helper.html">Collision_helper</a>*<span class="keyword">&gt;</span>(env.get());</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="keywordflow">return</span> ch-&gt;<a class="code" href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">collision_detector</a>(<span class="stringliteral">&quot;object_A&quot;</span>, <span class="stringliteral">&quot;object_B&quot;</span>); <span class="comment">//</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;}</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">   67</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator::mediate</a>(){</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a>();</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <a class="code" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a>();</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <a class="code" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a>();   </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        ros::waitForShutdown();</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;};</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">   76</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator::build_wings</a>(std::bitset&lt;3&gt;&amp; wing, <span class="keywordtype">int</span>&amp; robot){</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    std::bitset&lt;3&gt; result = <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]-&gt;observer_mask() &amp; wing;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classRobot.html">Robot</a>* ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classRobot.html">Robot</a>*<span class="keyword">&gt;</span>(<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>[robot]);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="keywordflow">for</span> (std::size_t i = 0; i &lt; result.size(); i++){</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="keywordflow">if</span> (result[i]){</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;            ceti-&gt;<a class="code" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a>(<a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>[robot][i]);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        }</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    }</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;}</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160; </div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">   87</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator::set_wings</a>(std::vector&lt;std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; wbp){</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i =0; i &lt; wbp.size(); i++){</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        std::vector&lt;Abstract_robot_element*&gt; v;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; wbp[i].first.size(); j++){</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are = <span class="keyword">new</span> <a class="code" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>( <span class="keyword">new</span> <a class="code" href="classWing.html">Wing</a>(wbp[i].first[j].name_, wbp[i].first[j].pose_,wbp[i].first[j].size_));</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            v.push_back(are);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <a class="code" href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">wings_</a>.push_back(v);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    }</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;};</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">   98</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">Moveit_mediator::setup_task</a>(){</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;=&gt; write Task Constructor Objects&quot;</span>);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; a: <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>) a.second.resize(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.size(), 0);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="comment">/*</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment">        </span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment">        bool coop = false;</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment">        for(int i = 0; i &lt; objects_.size(); i++){</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">        if (i+1 &lt; objects_.size()){</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">            for (long unsigned int j = objects_[i].size()-1; j &gt; 0; j--){</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">                if(objects_[i][j].getOrigin().distance(objects_[i+1].back().getOrigin()) == 0) {</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="comment">                                        objects_[i+1].pop_back(); </span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment">                                        coop= true;</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">        if(coop){</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="comment">                moveit_msgs::CollisionObject bottle;</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">                bottle.id = &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">                bottle.header.frame_id = &quot;world&quot;;</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">                bottle.header.stamp = ros::Time::now();</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">                bottle.primitives.resize(1);</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">                bottle.primitives[0].type = bottle.primitives[0].BOX;</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">                bottle.primitives[0].dimensions.resize(3);</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">                bottle.primitives[0].dimensions[0] = box_size.getX();</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="comment">                bottle.primitives[0].dimensions[1] = box_size.getY();</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">                bottle.primitives[0].dimensions[2] = box_size.getZ();</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">                bottle.primitive_poses.resize(1);</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="comment">                bottle.primitive_poses[0].position.x = -0.3f;</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment">                bottle.primitive_poses[0].position.y = -0.6f;</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">                bottle.primitive_poses[0].position.z = 0.9355f;</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">                bottle.primitive_poses[0].orientation.x = 0;</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment">                bottle.primitive_poses[0].orientation.y = 0;</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">                bottle.primitive_poses[0].orientation.z = 0;</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">                bottle.primitive_poses[0].orientation.w = 1;</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">                bottle.operation = bottle.ADD;</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">                psi_-&gt;applyCollisionObject(bottle);</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">                </span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">                for( int i = 0; i &lt; objects_.size();i++){</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">                        for(int j =0; j &lt; objects_[i].size();j++){</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">                                Moveit_robot* mr = dynamic_cast&lt;Moveit_robot*&gt;(robots_[i]);</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">                                moveit::task_constructor::Task task = create_Task(mr, psi_-&gt;getObjects().at(&quot;bottle&quot;), objects_[i][j]);</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">                                if (task.plan(1)){</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment">                                        task.execute(*task.solutions().front());</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">                                </span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">                        }</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="comment">        } else {</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">                acm_.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(&quot;bottle0&quot;, std::vector&lt;uint8_t&gt;()));</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="comment">                acm_.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(&quot;bottle1&quot;, std::vector&lt;uint8_t&gt;()));</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="comment">                moveit_msgs::CollisionObject bottle1;</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">                bottle1.id = &quot;bottle0&quot;;</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">                bottle1.header.frame_id = &quot;world&quot;;</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="comment">                bottle1.header.stamp = ros::Time::now();</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment">                bottle1.primitives.resize(1);</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="comment">                bottle1.primitives[0].type = bottle1.primitives[0].BOX;</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="comment">                bottle1.primitives[0].dimensions.resize(3);</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="comment">                bottle1.primitives[0].dimensions[0] = box_size.getX();</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">                bottle1.primitives[0].dimensions[1] = box_size.getY();</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">                bottle1.primitives[0].dimensions[2] = box_size.getZ();</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="comment">                bottle1.primitive_poses.resize(1);</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">                bottle1.primitive_poses[0].position.x = objects_[0][0].getOrigin().getX();</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">                bottle1.primitive_poses[0].position.y = objects_[0][0].getOrigin().getY();</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">                bottle1.primitive_poses[0].position.z = 0.9355f;</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="comment">                bottle1.primitive_poses[0].orientation.x = 0;</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">                bottle1.primitive_poses[0].orientation.y = 0;</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">                bottle1.primitive_poses[0].orientation.z = 0;</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">                bottle1.primitive_poses[0].orientation.w = 1;</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">                bottle1.operation = bottle1.ADD;</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment">                moveit_msgs::CollisionObject bottle2;</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">                bottle2.id = &quot;bottle1&quot;;</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">                bottle2.header.frame_id = &quot;world&quot;;</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">                bottle2.header.stamp = ros::Time::now();</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="comment">                bottle2.primitives.resize(1);</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">                bottle2.primitives[0].type = bottle2.primitives[0].BOX;</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">                bottle2.primitives[0].dimensions.resize(3);</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">                bottle2.primitives[0].dimensions[0] = box_size.getX();</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="comment">                bottle2.primitives[0].dimensions[1] = box_size.getY();</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment">                bottle2.primitives[0].dimensions[2] = box_size.getZ();</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">                bottle2.primitive_poses.resize(1);</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="comment">                bottle2.primitive_poses[0].position.x = objects_[1][0].getOrigin().getX(); </span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">                bottle2.primitive_poses[0].position.y = objects_[1][0].getOrigin().getY();</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">                bottle2.primitive_poses[0].position.z = 0.9355f;</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">                bottle2.primitive_poses[0].orientation.x = 0;</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="comment">                bottle2.primitive_poses[0].orientation.y = 0;</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment">                bottle2.primitive_poses[0].orientation.z = 0;</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">                bottle2.primitive_poses[0].orientation.w = 1;</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">                bottle2.operation = bottle2.ADD;</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">                psi_-&gt;applyCollisionObject(bottle1);</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="comment">                psi_-&gt;applyCollisionObject(bottle2);</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="comment">                std::vector&lt;std::thread&gt; ths;</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="comment">                std::vector&lt;std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt; tasks;</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="comment">                for (int i = 0 ; i &lt; objects_.size(); i++){</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="comment">                        std::stringstream ss;</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="comment">                        ss &lt;&lt; &quot;bottle&quot; &lt;&lt; std::to_string(i);</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="comment">                        Moveit_robot* mr = dynamic_cast&lt;Moveit_robot*&gt;(robots_[i]);</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="comment">                        std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt; tasks_per_robot;</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="comment">                        for (int j = 1; j &lt; objects_[i].size(); j++){</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="comment">                                moveit::task_constructor::Task mgt = create_Task(mr, psi_-&gt;getObjects().at(ss.str()), objects_[i][j]);</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">                                if(mgt.plan(1)) {</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment">                                        moveit_task_constructor_msgs::ExecuteTaskSolutionGoal e;</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="comment">                                        mgt.solutions().front()-&gt;fillMessage(e.solution, &amp;mgt.introspection());</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="comment">                                        tasks_per_robot.push(e);</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="comment">                                        moveit_msgs::CollisionObject temp = psi_-&gt;getObjects().at(ss.str());</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="comment">                                        temp.operation = temp.MOVE;</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="comment">                                        temp.pose.position.x = objects_[i][j].getOrigin().getX();</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="comment">                                        temp.pose.position.y = objects_[i][j].getOrigin().getY();</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="comment">                                        psi_-&gt;applyCollisionObject(temp);</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="comment">                                }               </span></div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">                        }</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="comment">                        moveit_msgs::CollisionObject temp = psi_-&gt;getObjects().at(ss.str());</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="comment">                        temp.operation = temp.MOVE;</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="comment">                        temp.pose.position.x = objects_[i][0].getOrigin().getX();</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="comment">                        temp.pose.position.y = objects_[i][0].getOrigin().getY();</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">                        psi_-&gt;applyCollisionObject(temp);</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="comment">                        tasks.push_back(tasks_per_robot);</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="comment">                        //ths.push_back(std::thread(&amp;Moveit_mediator::parallel_exec, this, std::ref(*mr), psi_-&gt;getObjects().at(ss.str()), objects_[i]));</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="comment">                for(auto&amp; a: acm_) a.second.resize(acm_.size(), 0);</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="comment">                </span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="comment">                while (!tasks[0].empty() &amp;&amp; !tasks[1].empty()){</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">                        for (int i =0; i &lt; std::max(tasks[0].front().solution.sub_trajectory.size(), tasks[1].front().solution.sub_trajectory.size()); i++){</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="comment">                                moveit_msgs::RobotTrajectory* t1 = nullptr;</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="comment">                                moveit_msgs::RobotTrajectory* t2 = nullptr;</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="comment">                                moveit_msgs::PlanningScene* ps1 = nullptr;</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="comment">                                moveit_msgs::PlanningScene* ps2 = nullptr;</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="comment">                                moveit_msgs::PlanningScene ps_m;</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="comment">                                std::vector&lt;moveit_msgs::PlanningScene::_allowed_collision_matrix_type&gt; acm_m;</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="comment">                                //for(auto entry: acm_) ROS_INFO(&quot;%s&quot;, entry.first.c_str());</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">                                if (i &lt; tasks[0].front().solution.sub_trajectory.size()){</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">                                        t1 = &amp;tasks[0].front().solution.sub_trajectory[i].trajectory;</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">                                        ps1 = &amp;tasks[0].front().solution.sub_trajectory[i].scene_diff;</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="comment">                                } </span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="comment">                                if (i &lt; tasks[1].front().solution.sub_trajectory.size()){</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="comment">                                        t2 = &amp;tasks[1].front().solution.sub_trajectory[i].trajectory;</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="comment">                                        ps2 = &amp;tasks[1].front().solution.sub_trajectory[i].scene_diff;</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="comment">                                std::vector&lt;std::thread&gt; th;</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="comment">                                if (t1){</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="comment">                                        Moveit_robot* mr = dynamic_cast&lt;Moveit_robot*&gt;(robots_[0]);</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="comment">                                        th.push_back(std::thread(&amp;Moveit_mediator::parallel_exec, this, std::ref(*mr), *t1, *ps1));</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="comment">                                        // First find ID from panda to start with</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="comment">                                        std::regex rx_panda(&quot;panda_arm([0-9]+)&quot;);</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="comment">                                std::smatch match;</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="comment">                                std::regex_match(mr-&gt;name(), match, rx_panda);</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="comment">                                        // build panda link regex</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="comment">                                        std::stringstream ss;</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="comment">                                        ss &lt;&lt; &quot;panda_&quot; &lt;&lt; match[1] &lt;&lt; &quot;_.*&quot;;</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="comment">                                        std::regex rx_panda_links(ss.str());</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="comment">                                        std::regex rx_box(&quot;bottle.*&quot;);</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="comment">                                        std::regex rx_table(&quot;table.*&quot;);</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="comment">                                        // Iterate task collsion matrix</span></div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="comment">                                        for(int j = 0; j &lt; ps1-&gt;allowed_collision_matrix.entry_names.size(); j++ ){</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="comment">                                                if( mr-&gt;map().at(&quot;base&quot;) == ps1-&gt;allowed_collision_matrix.entry_names[j]){</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, mr-&gt;map().at(&quot;base&quot;).c_str(), j);</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps1-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                                              </span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps1-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps1-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="comment">                                                if(std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[j], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps1-&gt;allowed_collision_matrix.entry_names[j].c_str(), j);</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps1-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                                      </span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps1-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps1-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="comment">                                                if(std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[j], match, rx_box)){</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps1-&gt;allowed_collision_matrix.entry_names[j].c_str(), j);</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps1-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                                      </span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps1-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps1-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="comment">                                                if(std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[j], match, rx_table)){</span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps1-&gt;allowed_collision_matrix.entry_names[j], j);</span></div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps1-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                                                      </span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps1-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;<span class="comment">                                                                if (std::regex_match(ps1-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps1-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="comment">                                                                        acm_.at(ps1-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps1-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="comment">                                        }</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="comment">                                        merge_ps(ps_m, ps1, mr);</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="comment">                                if (t2){</span></div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="comment">                                        Moveit_robot* mr = dynamic_cast&lt;Moveit_robot*&gt;(robots_[1]);</span></div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="comment">                                        th.push_back(std::thread(&amp;Moveit_mediator::parallel_exec, this, std::ref(*mr), *t2, *ps2));             </span></div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="comment">                                        std::regex rx_panda(&quot;panda_arm([0-9]+)&quot;);</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;<span class="comment">                                std::smatch match;</span></div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;<span class="comment">                                std::regex_match(mr-&gt;name(), match, rx_panda);</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;<span class="comment">                                        // build panda link regex</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="comment">                                        std::stringstream ss;</span></div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="comment">                                        ss &lt;&lt; &quot;panda_&quot; &lt;&lt; match[1] &lt;&lt; &quot;_.*&quot;;</span></div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<span class="comment">                                        std::regex rx_panda_links(ss.str());</span></div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;<span class="comment">                                        std::regex rx_box(&quot;bottle.*&quot;);</span></div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<span class="comment">                                        std::regex rx_table(&quot;table.*&quot;);</span></div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<span class="comment">                                        // Iterate task collsion matrix</span></div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="comment">                                        for(int j = 0; j &lt; ps2-&gt;allowed_collision_matrix.entry_names.size(); j++ ){</span></div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;<span class="comment">                                                if( mr-&gt;map().at(&quot;base&quot;) == ps2-&gt;allowed_collision_matrix.entry_names[j]){</span></div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, mr-&gt;map().at(&quot;base&quot;).c_str(), j);</span></div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps2-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                              </span></div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps2-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps2-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="comment">                                                if(std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[j], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<span class="comment">                                                        In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps2-&gt;allowed_collision_matrix.entry_names[j].c_str(), j);</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps2-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;<span class="comment">                                                                For that specific entry, loop over values                                                               </span></div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps2-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps2-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;<span class="comment">                                                if(std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[j], match, rx_box)){</span></div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;<span class="comment">                                                        In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps2-&gt;allowed_collision_matrix.entry_names[j].c_str(), j);</span></div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps2-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="comment">                                                                For that specific entry, loop over values               </span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps2-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps2-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="comment">                                                if(std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[j], match, rx_table)){</span></div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="comment">                                                         In case an entry matches an robot spezific link</span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="comment">                                                        ROS_INFO(&quot;entry matches link %s at index %i&quot;, ps2-&gt;allowed_collision_matrix.entry_names[j], j);</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="comment">                                                        for(int k = 0; k &lt; ps2-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="comment">                                                                 For that specific entry, loop over values                                                      </span></div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="comment">                                                                int distance = std::distance(acm_.begin(),acm_.find(ps2-&gt;allowed_collision_matrix.entry_names[k]));                                                             </span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</span></div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to link_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</span></div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to box_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="comment">                                                                }                               </span></div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="comment">                                                                if (std::regex_match(ps2-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to table_pattern %s&quot;, match[0].str().c_str());</span></div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="comment">                                                                }       </span></div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="comment">                                                                if (mr-&gt;map().at(&quot;base&quot;)== ps2-&gt;allowed_collision_matrix.entry_names[k]){</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="comment">                                                                        ROS_INFO(&quot;Entry in row corresponds to base %s&quot;, mr-&gt;map().at(&quot;base&quot;).c_str());</span></div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="comment">                                                                        acm_.at(ps2-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps2-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</span></div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="comment">                                                                }</span></div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="comment">                                                        }</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="comment">                                                }</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="comment">                                        }</span></div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="comment">                                        merge_ps(ps_m, ps2, mr);</span></div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="comment">                                for(int i = 0; i &lt; th.size(); i++){</span></div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="comment">                                        th[i].join();</span></div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="comment">                                }</span></div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="comment">                                merge_acm(ps_m);</span></div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="comment">                                planning_scene_diff_publisher_-&gt;publish(ps_m);</span></div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="comment">                        }</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="comment">                        tasks[0].pop();</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="comment">                        tasks[1].pop();</span></div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="comment">        */</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160; </div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160; </div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        std::regex item(<span class="stringliteral">&quot;box_([0-9]+)&quot;</span>);</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;tasks %li&quot;</span>, <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.size());</div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160; </div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        <span class="keywordflow">while</span>(!<a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.empty()){</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;in tasks&quot;</span>);</div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;                std::vector&lt;std::pair&lt;std::string, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt;&gt; q_ets;</div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;                <span class="keywordflow">for</span> (<span class="keyword">auto</span>*r:<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>){</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;                        ROS_INFO(<span class="stringliteral">&quot;robot iteration&quot;</span>);</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;                        <span class="keyword">auto</span> itlow = <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.lower_bound (r-&gt;name());  <span class="comment">// itlow points to b</span></div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;                        <span class="keyword">auto</span> itup = <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.upper_bound (r-&gt;name());  </div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;                        <span class="keywordflow">for</span> (<span class="keyword">auto</span> it=itlow; it!=itup; ++it){</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;                                tf2::Vector3 b_start_position = (*it).second.first;</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;                                <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; s_co : <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;getObjects()){</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;                                        <span class="keywordflow">if</span>(!std::regex_match(s_co.first, match, item)) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;                                        <span class="keywordflow">if</span>(tf2::tf2Distance2(b_start_position, tf2::Vector3(s_co.second.pose.position.x, s_co.second.pose.position.y,s_co.second.pose.position.z)) == 0) {</div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;                                                q_ets.push_back(std::pair&lt;std::string, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt;(r-&gt;name(), (*it).second.second));</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;                                                <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.erase(it);</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;                                                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;                                        }</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;                                }</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;                        }</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;                }</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160; </div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;tasks %li&quot;</span>, <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.size());</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;                ROS_INFO(<span class="stringliteral">&quot;jobs %li&quot;</span>, q_ets.size());</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160; </div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;                <span class="comment">// now execution should be possible, but with bocking</span></div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;                std::vector&lt;std::thread&gt; th;</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160; </div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;                <span class="keywordflow">while</span>(!q_ets.empty()){</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;                        moveit_msgs::PlanningScene ps_m;</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;                        ps_m.is_diff = 0;</div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;                        <span class="keywordflow">for</span> (<span class="keyword">auto</span>*r:<a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>){</div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;                                <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; s_qets : q_ets){</div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;                                        <span class="keywordflow">if</span>(s_qets.first == r-&gt;name()){</div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;                                                <span class="keywordflow">if</span>(!s_qets.second.front().solution.sub_trajectory.empty()){</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;                                                        moveit_msgs::RobotTrajectory* rt = (!s_qets.second.front().solution.sub_trajectory.empty()) ? &amp;s_qets.second.front().solution.sub_trajectory.front().trajectory : <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;                                                        moveit_msgs::PlanningScene* ps = (!s_qets.second.front().solution.sub_trajectory.empty()) ? &amp;s_qets.second.front().solution.sub_trajectory.front().scene_diff : <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160; </div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;                                                        <span class="keywordflow">if</span> (rt){</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;                                                                <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(r);</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;                                                                <span class="comment">// mr-&gt;mgi()-&gt;execute(*rt);</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;                                                                th.push_back(std::thread(&amp;<a class="code" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator::parallel_exec</a>, <span class="keyword">this</span>, std::ref(*mr), *rt, *ps));</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;                                                        </div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;                                                                <span class="comment">// First find ID from panda to start with</span></div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;                                                                std::regex rx_panda(<span class="stringliteral">&quot;panda_arm([0-9]+)&quot;</span>);</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;                                                                std::smatch match;</div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;                                                                std::regex_match(mr-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>(), match, rx_panda);</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160; </div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;                                                                <span class="comment">// build panda link regex</span></div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;                                                                std::stringstream ss;</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;                                                                ss &lt;&lt; <span class="stringliteral">&quot;panda_&quot;</span> &lt;&lt; match[1] &lt;&lt; <span class="stringliteral">&quot;_.*&quot;</span>;</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;                                                                std::regex rx_panda_links(ss.str());</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;                                                                std::regex rx_box(<span class="stringliteral">&quot;box.*&quot;</span>);</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;                                                                std::regex rx_table(<span class="stringliteral">&quot;table.*&quot;</span>);</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160; </div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;                                                                <span class="keywordflow">if</span>(ps){</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;                                                                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> j = 0; j &lt; ps-&gt;allowed_collision_matrix.entry_names.size(); j++ ){</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;                                                                                <span class="keywordflow">if</span>( mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>) == ps-&gt;allowed_collision_matrix.entry_names[j]){</div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                                                                                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> k = 0; k &lt; ps-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;                                                                                                <span class="keywordtype">int</span> distance = std::distance(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.begin(),<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.find(ps-&gt;allowed_collision_matrix.entry_names[k]));                                                              </div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;                                                                                                }                               </div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;                                                                                                }       </div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;                                                                                                <span class="keywordflow">if</span> (mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>)== ps-&gt;allowed_collision_matrix.entry_names[k]){</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;                                                                                        }</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;                                                                                }</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160; </div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;                                                                                <span class="keywordflow">if</span>(std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[j], match, rx_panda_links)){</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;                                                                                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> k = 0; k &lt; ps-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;                                                                                                <span class="keywordtype">int</span> distance = std::distance(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.begin(),<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.find(ps-&gt;allowed_collision_matrix.entry_names[k]));                                                              </div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;                                                                                                }                               </div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;                                                                                                }       </div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;                                                                                                <span class="keywordflow">if</span> (mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>)== ps-&gt;allowed_collision_matrix.entry_names[k]){</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;                                                                                        }</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;                                                                                }</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160; </div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;                                                                                <span class="keywordflow">if</span>(std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[j], match, rx_box)){</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;                                                                                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> k = 0; k &lt; ps-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;                                                                                                <span class="keywordtype">int</span> distance = std::distance(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.begin(),<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.find(ps-&gt;allowed_collision_matrix.entry_names[k]));                                                              </div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;                                                                                                }                               </div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;                                                                                                }       </div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;                                                                                                <span class="keywordflow">if</span> (mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>)== ps-&gt;allowed_collision_matrix.entry_names[k]){</div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;                                                                                        }</div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;                                                                                }</div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160; </div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;                                                                                <span class="keywordflow">if</span>(std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[j], match, rx_table)){</div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;                                                                                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> k = 0; k &lt; ps-&gt;allowed_collision_matrix.entry_values[j].enabled.size(); k++){</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;                                                                                                <span class="keywordtype">int</span> distance = std::distance(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.begin(),<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.find(ps-&gt;allowed_collision_matrix.entry_names[k]));                                                              </div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_panda_links)){</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_box)){</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;                                                                                                }                               </div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;                                                                                                <span class="keywordflow">if</span> (std::regex_match(ps-&gt;allowed_collision_matrix.entry_names[k], match, rx_table)){</div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;                                                                                                }       </div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;                                                                                                <span class="keywordflow">if</span> (mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>().at(<span class="stringliteral">&quot;base&quot;</span>)== ps-&gt;allowed_collision_matrix.entry_names[k]){</div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;                                                                                                        <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.at(ps-&gt;allowed_collision_matrix.entry_names[k])[distance] = ps-&gt;allowed_collision_matrix.entry_values[j].enabled[k];</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;                                                                                                }</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;                                                                                        }</div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;                                                                                }</div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;                                                                        }</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;                                                                        <a class="code" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a>(ps_m, ps, mr);</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;                                                                }</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;                                                                s_qets.second.front().solution.sub_trajectory.erase(s_qets.second.front().solution.sub_trajectory.begin());</div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;                                                        }</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;                                                } <span class="keywordflow">else</span> {s_qets.second.pop();};  </div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;                                        }</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;                                }</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;                        }</div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;                        <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; th.size(); i++){</div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;                                <span class="keywordflow">if</span>(th[i].joinable()) th[i].join();</div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;                        }</div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;                        <a class="code" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a>(ps_m);</div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;                        <span class="keywordflow">if</span>(ps_m.is_diff) <a class="code" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a>-&gt;publish(ps_m);</div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;                }</div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160; </div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        }</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160; </div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;}</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160; </div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160; </div>
+<div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">  696</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">Moveit_mediator::task_planner</a>(){</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;        <span class="comment">/* There are 2 ways to interprete a Task </span></div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;<span class="comment">        1. A box position in acm is also the first entry in task, </span></div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;<span class="comment">        2. A box position in acm is not the first entry in task, in that case we can might try for each position</span></div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;<span class="comment">        */</span></div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;        <span class="keyword">auto</span> jq = <a class="code" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">job_reader_</a>-&gt;robot_data();</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;        <span class="keyword">auto</span> cd = <a class="code" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">cuboid_reader_</a>-&gt;cuboid_bin();</div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160; </div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;        <span class="comment">//std::vector&lt;std::string&gt; objs =  {&quot;bottle1&quot;, &quot;bottle2&quot;};</span></div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160; </div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cd.size(); i ++){</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;                std::stringstream ss;</div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;                ss &lt;&lt; <span class="stringliteral">&quot;box_&quot;</span> &lt;&lt; i;</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160; </div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;                moveit_msgs::CollisionObject item;</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;                item.id = ss.str();</div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;                item.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;                item.header.stamp = ros::Time::now();</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;                item.primitives.resize(1);</div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;                item.primitives[0].type = item.primitives[0].BOX;</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;                item.primitives[0].dimensions.resize(3);</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;                item.primitives[0].dimensions[0] = cd[i].x_depth;</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;                item.primitives[0].dimensions[1] = cd[i].y_width;</div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;                item.primitives[0].dimensions[2] = cd[i].z_heigth;</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160; </div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;                item.primitive_poses.resize(1);</div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;                item.primitive_poses[0].position.x = cd[i].Pose.position.x;</div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;                item.primitive_poses[0].position.y = cd[i].Pose.position.y;</div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;                item.primitive_poses[0].position.z = cd[i].Pose.position.z;</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;                item.primitive_poses[0].orientation.x = cd[i].Pose.orientation.x;</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;                item.primitive_poses[0].orientation.y = cd[i].Pose.orientation.y;</div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;                item.primitive_poses[0].orientation.z = cd[i].Pose.orientation.z;</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;                item.primitive_poses[0].orientation.w = cd[i].Pose.orientation.w;</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;                item.operation = item.ADD;</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160; </div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;                <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;applyCollisionObject(item);</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;                <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.insert(std::pair&lt;std::string, std::vector&lt;uint8_t&gt;&gt;(item.id, std::vector&lt;uint8_t&gt;()));</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160; </div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;                <span class="comment">// Could also safe id&#39;s somewhere</span></div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;        }</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160; </div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;        std::regex item(<span class="stringliteral">&quot;box_([0-9]+)&quot;</span>);</div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160; </div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="comment">// circular buffer is job-q</span></div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keywordflow">while</span>(!jq.empty()){</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;                <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; s_co : <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;getObjects()){</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;                        <span class="keywordflow">if</span>(!std::regex_match(s_co.first, match, item)) <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;                        std::pair&lt;std::string, job_data&gt; temp = jq.front();</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;                        ROS_INFO(<span class="stringliteral">&quot;1. job entry %f %f %f&quot;</span>, temp.second.jobs_.front().getOrigin().getX(), temp.second.jobs_.front().getOrigin().getY(), temp.second.jobs_.front().getOrigin().getZ());</div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;                        ROS_INFO(<span class="stringliteral">&quot;object position %f %f %f&quot;</span>, s_co.second.pose.position.x, s_co.second.pose.position.y, s_co.second.pose.position.z);</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;                        <span class="keywordflow">if</span>(tf2::tf2Distance2(temp.second.jobs_.front().getOrigin(), tf2::Vector3(s_co.second.pose.position.x, s_co.second.pose.position.y, s_co.second.pose.position.z )) == 0) {</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;                                std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt; tasks_per_robot;</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;                                <span class="comment">// get rob by name</span></div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;                                <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr;</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;                                <span class="keywordflow">for</span>(<span class="keyword">auto</span>* r: <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>) <span class="keywordflow">if</span> (r-&gt;name() == temp.first) mr = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(r);</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160; </div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;                                <span class="comment">// loop jobs</span></div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;                                <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k = 1; k &lt; temp.second.jobs_.size(); k++){</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;                                        moveit::task_constructor::Task mgt = <a class="code" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a>(mr, <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;getObjects().at(s_co.first), temp.second.jobs_[k]);</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;                                        <span class="keywordflow">if</span>(mgt.plan(1)) {</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;                                                moveit_task_constructor_msgs::ExecuteTaskSolutionGoal e;</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;                                                mgt.solutions().front()-&gt;fillMessage(e.solution, &amp;mgt.introspection());</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;                                                tasks_per_robot.push(e);</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160; </div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;                                                moveit_msgs::CollisionObject temp_co = <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;getObjects().at(s_co.first);</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;                                                temp_co.operation = temp_co.MOVE;</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;                                                temp_co.pose.position.x = temp.second.jobs_[k].getOrigin().getX();</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;                                                temp_co.pose.position.y = temp.second.jobs_[k].getOrigin().getY();</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;                                                temp_co.pose.position.z = temp.second.jobs_[k].getOrigin().getZ();</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;                                                temp_co.pose.orientation.x = temp.second.jobs_[k].getRotation().getX();</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;                                                temp_co.pose.orientation.y = temp.second.jobs_[k].getRotation().getY();</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;                                                temp_co.pose.orientation.z = temp.second.jobs_[k].getRotation().getZ();</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;                                                temp_co.pose.orientation.w = temp.second.jobs_[k].getRotation().getW();</div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;                                                <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;applyCollisionObject(temp_co);</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;                                        }</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;                                }</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;                                std::pair&lt;tf2::Vector3, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt; pair(temp.second.jobs_.front().getOrigin(), tasks_per_robot);</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;                                <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>.insert(std::pair&lt;std::string, std::pair&lt;tf2::Vector3, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt;&gt;(mr-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>(), pair));</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;                                jq.pop_front();</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;                        } <span class="keywordflow">else</span> {jq.push_back(temp);}</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;                }</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;        }</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160; </div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;        <span class="comment">// clean up</span></div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; cd.size(); i ++){</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;                std::stringstream ss;</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;                ss &lt;&lt; <span class="stringliteral">&quot;box_&quot;</span> &lt;&lt; i;</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160; </div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;                moveit_msgs::CollisionObject item;</div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;                item.id = ss.str();</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;                item.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;                item.header.stamp = ros::Time::now();</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;                item.primitives.resize(1);</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;                item.primitives[0].type = item.primitives[0].BOX;</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;                item.primitives[0].dimensions.resize(3);</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;                item.primitives[0].dimensions[0] = cd[i].x_depth;</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;                item.primitives[0].dimensions[1] = cd[i].y_width;</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;                item.primitives[0].dimensions[2] = cd[i].z_heigth;</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160; </div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;                item.pose.position.x = cd[i].Pose.position.x;</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;                item.pose.position.y = cd[i].Pose.position.y;</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;                item.pose.position.z = cd[i].Pose.position.z;</div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;                item.pose.orientation.x = cd[i].Pose.orientation.x;</div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;                item.pose.orientation.y = cd[i].Pose.orientation.y;</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;                item.pose.orientation.z = cd[i].Pose.orientation.z;</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;                item.pose.orientation.w = cd[i].Pose.orientation.w;</div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;                item.operation = item.MOVE;</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160; </div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;                <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>-&gt;applyCollisionObject(item);</div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;                <span class="comment">// Could also safe id&#39;s somewhere</span></div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;        }</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;        </div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;}</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160; </div>
+<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160; </div>
+<div class="line"><a name="l00812"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">  812</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">Moveit_mediator::merge_acm</a>(moveit_msgs::PlanningScene&amp; ps_m){</div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;        moveit_msgs::PlanningScene::_allowed_collision_matrix_type acmt;</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;        acmt.entry_values.resize(<a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>.size());</div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160; </div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;        <span class="keywordtype">int</span> i = 0;</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; a : <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>){</div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;                acmt.entry_names.push_back(a.first);</div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;                acmt.entry_values[i].enabled = a.second;</div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;                i++;</div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;        }</div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160; </div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;        ps_m.allowed_collision_matrix = acmt;</div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;broken after merge&quot;</span>);</div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160; </div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;}</div>
+<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160; </div>
+<div class="line"><a name="l00828"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">  828</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">Moveit_mediator::merge_ps</a>(moveit_msgs::PlanningScene&amp; out, moveit_msgs::PlanningScene* in, <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr){</div>
+<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;        <span class="comment">// get full mr link list </span></div>
+<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;        std::vector&lt;std::string&gt; links;</div>
+<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span> link : mr-&gt;<a class="code" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>()-&gt;getLinkNames())links.push_back(link);</div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;        links.push_back(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;left_finger&quot;</span>]);</div>
+<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;        links.push_back(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;right_finger&quot;</span>]);</div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;        links.push_back(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_link&quot;</span>]);</div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;        links.push_back(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;base&quot;</span>]);</div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160; </div>
+<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160; </div>
+<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span> ao : in-&gt;robot_state.attached_collision_objects) out.robot_state.attached_collision_objects.push_back(ao);</div>
+<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;        <span class="keywordflow">if</span> (in-&gt;robot_state.is_diff) out.robot_state.is_diff = in-&gt;robot_state.is_diff;</div>
+<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;        <span class="keywordflow">if</span> (in-&gt;is_diff) out.is_diff = in-&gt;is_diff;</div>
+<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;        out.robot_state.joint_state.header = in-&gt;robot_state.joint_state.header;</div>
+<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;        out.robot_model_name = <span class="stringliteral">&quot;panda&quot;</span>;</div>
+<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160; </div>
+<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160; </div>
+<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160; </div>
+<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span> link : links) {</div>
+<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;                <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; in-&gt;robot_state.joint_state.name.size(); i++){</div>
+<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;                        <span class="keywordflow">if</span>(link.c_str() == in-&gt;robot_state.joint_state.name[i].c_str()){</div>
+<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;                                out.robot_state.joint_state.effort.push_back(in-&gt;robot_state.joint_state.effort[i]);</div>
+<div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;                                out.robot_state.joint_state.position.push_back(in-&gt;robot_state.joint_state.position[i]);</div>
+<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;                                out.robot_state.joint_state.velocity.push_back(in-&gt;robot_state.joint_state.velocity[i]);</div>
+<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;                                ROS_INFO(<span class="stringliteral">&quot;check&quot;</span>);</div>
+<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;                        }</div>
+<div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;                }</div>
+<div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160; </div>
+<div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;                <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; in-&gt;link_padding.size(); i++){</div>
+<div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;                        <span class="keywordflow">if</span>(link.c_str() == in-&gt;link_padding[i].link_name.c_str()){</div>
+<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;                                out.link_padding.push_back(in-&gt;link_padding[i]);</div>
+<div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;                        }</div>
+<div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;                }</div>
+<div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160; </div>
+<div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;                <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; in-&gt;link_scale.size(); i++){</div>
+<div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;                        <span class="keywordflow">if</span>(link.c_str() == in-&gt;link_scale[i].link_name.c_str()){</div>
+<div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;                                out.link_scale.push_back(in-&gt;link_scale[i]);</div>
+<div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;                        }</div>
+<div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;                }</div>
+<div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;        }</div>
+<div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;        </div>
+<div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;}</div>
+<div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;        </div>
+<div class="line"><a name="l00871"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">  871</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator::parallel_exec</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>&amp; mr, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps){</div>
+<div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;        mr.<a class="code" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>()-&gt;execute(rt);</div>
+<div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;}</div>
+<div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160; </div>
+<div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160; </div>
+<div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160; </div>
+<div class="line"><a name="l00877"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">  877</a></span>&#160;moveit::task_constructor::Task <a class="code" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">Moveit_mediator::create_Task</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr, moveit_msgs::CollisionObject&amp; source, tf2::Transform&amp; target){</div>
+<div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;    tf2::Transform t(tf2::Quaternion(source.pose.orientation.x, source.pose.orientation.y, source.pose.orientation.z, source.pose.orientation.w), tf2::Vector3(source.pose.position.x, source.pose.position.y, source.pose.position.z));</div>
+<div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;        std::string support_surface1 = <span class="stringliteral">&quot;nichts&quot;</span>;</div>
+<div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;    std::string support_surface2 = <span class="stringliteral">&quot;nichts&quot;</span>;</div>
+<div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160; </div>
+<div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160; </div>
+<div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* ar : <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>){</div>
+<div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;        std::string str;</div>
+<div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;        <span class="keywordflow">if</span>(ar-&gt;check_single_object_collision(t, str)) support_surface1 = str;</div>
+<div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;        <span class="keywordflow">if</span>(ar-&gt;check_single_object_collision(target, str)) support_surface2= str;</div>
+<div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;    }</div>
+<div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160; </div>
+<div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;ss1 %s&quot;</span>, support_surface1.c_str());</div>
+<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;ss2 %s&quot;</span>, support_surface2.c_str());</div>
+<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160; </div>
+<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160; </div>
+<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;        <span class="keyword">const</span> std::string <span class="keywordtype">object</span> = source.id;</div>
+<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;    moveit::task_constructor::Task task_;</div>
+<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160; </div>
+<div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;        std::string name = <span class="stringliteral">&quot;Pick&amp;Place&quot;</span>;</div>
+<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;        task_.stages()-&gt;setName(name + std::to_string(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(ros::Time::now().toNSec())));</div>
+<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;        task_.loadRobotModel();</div>
+<div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;        task_.setRobotModel(mr-&gt;<a class="code" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>()-&gt;getRobotModel());</div>
+<div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160; </div>
+<div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;        <span class="comment">// Set task properties</span></div>
+<div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;        task_.setProperty(<span class="stringliteral">&quot;group&quot;</span>, mr-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>());</div>
+<div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;        task_.setProperty(<span class="stringliteral">&quot;eef&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>]);</div>
+<div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;        task_.setProperty(<span class="stringliteral">&quot;hand&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_group_name&quot;</span>]);</div>
+<div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160;        task_.setProperty(<span class="stringliteral">&quot;hand_grasping_frame&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;        task_.setProperty(<span class="stringliteral">&quot;ik_frame&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160; </div>
+<div class="line"><a name="l00908"></a><span class="lineno">  908</span>&#160;        moveit::task_constructor::Stage* current_state_ptr = <span class="keyword">nullptr</span>;  </div>
+<div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;        {</div>
+<div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;                <span class="keyword">auto</span> current_state = std::make_unique&lt; moveit::task_constructor::stages::CurrentState&gt;(<span class="stringliteral">&quot;current state&quot;</span>);</div>
+<div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;                <span class="keyword">auto</span> applicability_filter = std::make_unique&lt; moveit::task_constructor::stages::PredicateFilter&gt;(<span class="stringliteral">&quot;applicability test&quot;</span>, std::move(current_state));</div>
+<div class="line"><a name="l00912"></a><span class="lineno">  912</span>&#160;                applicability_filter-&gt;setPredicate([<span class="keywordtype">object</span>](<span class="keyword">const</span> moveit::task_constructor::SolutionBase&amp; s, std::string&amp; comment) {</div>
+<div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;                        <span class="keywordflow">if</span> (s.start()-&gt;scene()-&gt;getCurrentState().hasAttachedBody(<span class="keywordtype">object</span>)) {</div>
+<div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;                                comment = <span class="stringliteral">&quot;object with id &#39;&quot;</span> + object + <span class="stringliteral">&quot;&#39; is already attached and cannot be picked&quot;</span>;</div>
+<div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;                                return false;</div>
+<div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;                        }</div>
+<div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;                        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;                });</div>
+<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160; </div>
+<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;                current_state_ptr = applicability_filter.get();</div>
+<div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;                task_.add(std::move(applicability_filter));</div>
+<div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;        }</div>
+<div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160; </div>
+<div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;        {  <span class="comment">// Open Hand</span></div>
+<div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;                <span class="keyword">auto</span> stage = std::make_unique&lt; moveit::task_constructor::stages::MoveTo&gt;(<span class="stringliteral">&quot;open hand&quot;</span>, <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>);</div>
+<div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;                stage-&gt;setGroup(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>]);</div>
+<div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;                stage-&gt;setGoal(<span class="stringliteral">&quot;open&quot;</span>);</div>
+<div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;                task_.add(std::move(stage));</div>
+<div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;        }</div>
+<div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160; </div>
+<div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;        {  <span class="comment">// Move-to pre-grasp</span></div>
+<div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;                <span class="keyword">auto</span> stage = std::make_unique&lt; moveit::task_constructor::stages::Connect&gt;(</div>
+<div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;                    <span class="stringliteral">&quot;move to pick&quot;</span>,  moveit::task_constructor::stages::Connect::GroupPlannerVector{ { mr-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>(),  <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>} });</div>
+<div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;                stage-&gt;setTimeout(5.0);</div>
+<div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;                stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT);</div>
+<div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;                task_.add(std::move(stage));</div>
+<div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;        }</div>
+<div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160; </div>
+<div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;         moveit::task_constructor::Stage* attach_object_stage = <span class="keyword">nullptr</span>;  <span class="comment">// Forward attach_object_stage to place pose generator</span></div>
+<div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;        {</div>
+<div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;                <span class="keyword">auto</span> grasp = std::make_unique&lt;moveit::task_constructor::SerialContainer&gt;(<span class="stringliteral">&quot;pick object&quot;</span>);</div>
+<div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;                task_.properties().exposeTo(grasp-&gt;properties(), { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;hand&quot;</span>, <span class="stringliteral">&quot;group&quot;</span>, <span class="stringliteral">&quot;ik_frame&quot;</span> });</div>
+<div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;                grasp-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;hand&quot;</span>, <span class="stringliteral">&quot;group&quot;</span>, <span class="stringliteral">&quot;ik_frame&quot;</span> });</div>
+<div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160; </div>
+<div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160; </div>
+<div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;                {       <span class="comment">// Approach Obj</span></div>
+<div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveRelative&gt;(<span class="stringliteral">&quot;approach object&quot;</span>, <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>);</div>
+<div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;approach_object&quot;</span>);</div>
+<div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;link&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;                        stage-&gt;setMinMaxDistance(0.07, 0.2);</div>
+<div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160; </div>
+<div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;                        <span class="comment">// Set hand forward direction</span></div>
+<div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;                        geometry_msgs::Vector3Stamped vec;</div>
+<div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;                        vec.header.frame_id = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>];</div>
+<div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;                        vec.vector.z = 1.0;</div>
+<div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;                        stage-&gt;setDirection(vec);</div>
+<div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;                }</div>
+<div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160; </div>
+<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;                {</div>
+<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;                        <span class="comment">// Sample grasp pose</span></div>
+<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::GenerateGraspPose&gt;(<span class="stringliteral">&quot;generate grasp pose&quot;</span>);</div>
+<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT);</div>
+<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;grasp_pose&quot;</span>);</div>
+<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;                        stage-&gt;setPreGraspPose(<span class="stringliteral">&quot;open&quot;</span>);</div>
+<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;                        stage-&gt;setObject(<span class="keywordtype">object</span>);</div>
+<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;                        stage-&gt;setAngleDelta(M_PI / 12);</div>
+<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;                        stage-&gt;setMonitoredStage(current_state_ptr);  <span class="comment">// Hook into current state</span></div>
+<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160; </div>
+<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;                        <span class="comment">// Compute IK</span></div>
+<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;                        Eigen::Quaterniond eigen = Eigen::AngleAxisd(1.571f, Eigen::Vector3d::UnitX()) *</div>
+<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;                                   Eigen::AngleAxisd(0.785f, Eigen::Vector3d::UnitY()) *</div>
+<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;                                   Eigen::AngleAxisd(1.571f, Eigen::Vector3d::UnitZ());</div>
+<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;                        Eigen::Translation3d trans(0.1f, 0, 0);</div>
+<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;                        Eigen::Isometry3d ik = eigen * trans;</div>
+<div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160; </div>
+<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;                        <span class="keyword">auto</span> wrapper = std::make_unique&lt;moveit::task_constructor::stages::ComputeIK&gt;(<span class="stringliteral">&quot;grasp pose IK&quot;</span>, std::move(stage));</div>
+<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;                        wrapper-&gt;setMaxIKSolutions(8);</div>
+<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;                        wrapper-&gt;setMinSolutionDistance(1.0);</div>
+<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;                        wrapper-&gt;setIKFrame(ik, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;                        wrapper-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;                        wrapper-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::INTERFACE, { <span class="stringliteral">&quot;target_pose&quot;</span> });</div>
+<div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;                        grasp-&gt;insert(std::move(wrapper));</div>
+<div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;                }</div>
+<div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160; </div>
+<div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;                {</div>
+<div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;allow collision (hand,object)&quot;</span>);</div>
+<div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;                        stage-&gt;allowCollisions(</div>
+<div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;                            <span class="keywordtype">object</span>, task_.getRobotModel()-&gt;getJointModelGroup(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>])-&gt;getLinkModelNamesWithCollisionGeometry(),</div>
+<div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;                            <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;                }</div>
+<div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160; </div>
+<div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;                {</div>
+<div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveTo&gt;(<span class="stringliteral">&quot;close hand&quot;</span>, <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>);</div>
+<div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;                        stage-&gt;setGroup(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>]);</div>
+<div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;                        stage-&gt;setGoal(<span class="stringliteral">&quot;close&quot;</span>);</div>
+<div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;                }</div>
+<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; </div>
+<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;                {       <span class="comment">// Attach obj</span></div>
+<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;attach object&quot;</span>);</div>
+<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;                        stage-&gt;attachObject(<span class="keywordtype">object</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;                        attach_object_stage = stage.get();</div>
+<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;                }</div>
+<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; </div>
+<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;                {       <span class="comment">// Allow Collision obj table</span></div>
+<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;allow collision (object,support)&quot;</span>);</div>
+<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;                        stage-&gt;allowCollisions({ <span class="keywordtype">object</span> }, support_surface1, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;                }</div>
+<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; </div>
+<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;                {</div>
+<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveRelative&gt;(<span class="stringliteral">&quot;lift object&quot;</span>, <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>);</div>
+<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;                        stage-&gt;setMinMaxDistance(0.1, 0.2);</div>
+<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;                        stage-&gt;setIKFrame(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;lift_object&quot;</span>);</div>
+<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; </div>
+<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;                        <span class="comment">// Set upward direction</span></div>
+<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;                        geometry_msgs::Vector3Stamped vec;</div>
+<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;                        vec.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;                        vec.vector.z = 1.0;</div>
+<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;                        stage-&gt;setDirection(vec);</div>
+<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;                }</div>
+<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; </div>
+<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;                {       <span class="comment">// forbid collision</span></div>
+<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;forbid collision (object,surface)&quot;</span>);</div>
+<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;                        stage-&gt;allowCollisions({ <span class="keywordtype">object</span> }, support_surface1, <span class="keyword">false</span>);</div>
+<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;                        grasp-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;                }</div>
+<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; </div>
+<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;                <span class="comment">// Add grasp container to task</span></div>
+<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;                task_.add(std::move(grasp));</div>
+<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;        }</div>
+<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160; </div>
+<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;        {</div>
+<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;                <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::Connect&gt;(</div>
+<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;                    <span class="stringliteral">&quot;move to place&quot;</span>, moveit::task_constructor::stages::Connect::GroupPlannerVector{ { mr-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>(), <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a> } });</div>
+<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;                stage-&gt;setTimeout(5.0);</div>
+<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;                stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT);</div>
+<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;                task_.add(std::move(stage));</div>
+<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;        }</div>
+<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; </div>
+<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;        {</div>
+<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;                <span class="keyword">auto</span> place = std::make_unique&lt;moveit::task_constructor::SerialContainer&gt;(<span class="stringliteral">&quot;place object&quot;</span>);</div>
+<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;                task_.properties().exposeTo(place-&gt;properties(), { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;hand&quot;</span>, <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;                place-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;hand&quot;</span>, <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; </div>
+<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;                {</div>
+<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;                <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;allow cokbkmomsurface)&quot;</span>);</div>
+<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;                stage-&gt;allowCollisions( {<span class="keywordtype">object</span>} , support_surface2, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;                place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;                }</div>
+<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; </div>
+<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; </div>
+<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;                {</div>
+<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveRelative&gt;(<span class="stringliteral">&quot;lower object&quot;</span>, <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>);</div>
+<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;lower_object&quot;</span>);</div>
+<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;link&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;                        stage-&gt;setMinMaxDistance(.03, .13);</div>
+<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; </div>
+<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;                        <span class="comment">// Set downward direction</span></div>
+<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;                        geometry_msgs::Vector3Stamped vec;</div>
+<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;                        vec.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;                        vec.vector.z = -1.0;</div>
+<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;                        stage-&gt;setDirection(vec);</div>
+<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;                        place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;                }</div>
+<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; </div>
+<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;                {</div>
+<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;                        <span class="comment">// Generate Place Pose</span></div>
+<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::GeneratePlacePose&gt;(<span class="stringliteral">&quot;generate place pose&quot;</span>);</div>
+<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;ik_frame&quot;</span> });</div>
+<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;place_pose&quot;</span>);</div>
+<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;                        stage-&gt;setObject(<span class="keywordtype">object</span>);</div>
+<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; </div>
+<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;                        <span class="comment">// Set target pose</span></div>
+<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;                        geometry_msgs::PoseStamped p;</div>
+<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;                        p.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;                        p.pose.position.x = target.getOrigin().getX();</div>
+<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;                        p.pose.position.y = target.getOrigin().getY();</div>
+<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;                        p.pose.position.z = target.getOrigin().getZ();</div>
+<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;                        p.pose.orientation.x = target.getRotation().getX();</div>
+<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;                        p.pose.orientation.y = target.getRotation().getY();</div>
+<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;                        p.pose.orientation.z = target.getRotation().getZ();</div>
+<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;                        p.pose.orientation.w = target.getRotation().getW();</div>
+<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; </div>
+<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; </div>
+<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; </div>
+<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;                        stage-&gt;setPose(p);</div>
+<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;                        stage-&gt;setMonitoredStage(attach_object_stage);  <span class="comment">// Hook into attach_object_stage</span></div>
+<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; </div>
+<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;                        <span class="comment">// Compute IK</span></div>
+<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;                        Eigen::Quaterniond eigen = Eigen::AngleAxisd(1.571f, Eigen::Vector3d::UnitX()) *</div>
+<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;                                   Eigen::AngleAxisd(0.785f, Eigen::Vector3d::UnitY()) *</div>
+<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;                                   Eigen::AngleAxisd(1.571f, Eigen::Vector3d::UnitZ());</div>
+<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;                        Eigen::Translation3d trans(0.1f, 0, 0);</div>
+<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;                        Eigen::Isometry3d ik = eigen * trans;</div>
+<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;                        <span class="keyword">auto</span> wrapper = std::make_unique&lt;moveit::task_constructor::stages::ComputeIK&gt;(<span class="stringliteral">&quot;place pose IK&quot;</span>, std::move(stage));</div>
+<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;                        wrapper-&gt;setMaxIKSolutions(2);</div>
+<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;                        wrapper-&gt;setIKFrame(ik, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;                        wrapper-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;eef&quot;</span>, <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;                        wrapper-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::INTERFACE, { <span class="stringliteral">&quot;target_pose&quot;</span> });</div>
+<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;                        place-&gt;insert(std::move(wrapper));</div>
+<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;                }</div>
+<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; </div>
+<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;                {</div>
+<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveTo&gt;(<span class="stringliteral">&quot;open hand&quot;</span>, <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>);</div>
+<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;                        stage-&gt;setGroup(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>]);</div>
+<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;                        stage-&gt;setGoal(<span class="stringliteral">&quot;open&quot;</span>);</div>
+<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;                        place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;                }</div>
+<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; </div>
+<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;                {</div>
+<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;allow collision (hand,object)&quot;</span>);</div>
+<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;                        stage-&gt;allowCollisions(</div>
+<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;                            <span class="keywordtype">object</span>, task_.getRobotModel()-&gt;getJointModelGroup(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef_name&quot;</span>])-&gt;getLinkModelNamesWithCollisionGeometry(),</div>
+<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;                            <span class="keyword">false</span>);</div>
+<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;                        place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;                }</div>
+<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; </div>
+<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;                {</div>
+<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::ModifyPlanningScene&gt;(<span class="stringliteral">&quot;detach object&quot;</span>);</div>
+<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;                        stage-&gt;detachObject(<span class="keywordtype">object</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;                        place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;                }</div>
+<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; </div>
+<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;                {</div>
+<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;                        <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveRelative&gt;(<span class="stringliteral">&quot;retreat after place&quot;</span>, <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>);</div>
+<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;                        stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;                        stage-&gt;setMinMaxDistance(.1, .2);</div>
+<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;                        stage-&gt;setIKFrame(mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>]);</div>
+<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;                        stage-&gt;properties().set(<span class="stringliteral">&quot;marker_ns&quot;</span>, <span class="stringliteral">&quot;retreat&quot;</span>);</div>
+<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;                        geometry_msgs::Vector3Stamped vec;</div>
+<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;                        vec.header.frame_id = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_frame&quot;</span>];</div>
+<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;                        vec.vector.z = -1.0;</div>
+<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;                        stage-&gt;setDirection(vec);</div>
+<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;                        place-&gt;insert(std::move(stage));</div>
+<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;                }</div>
+<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; </div>
+<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;                <span class="comment">// Add place container to task</span></div>
+<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;                task_.add(std::move(place));</div>
+<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;        }</div>
+<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; </div>
+<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;        {</div>
+<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;                <span class="keyword">auto</span> stage = std::make_unique&lt;moveit::task_constructor::stages::MoveTo&gt;(<span class="stringliteral">&quot;move home&quot;</span>, <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>);</div>
+<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;                stage-&gt;properties().configureInitFrom(moveit::task_constructor::Stage::PARENT, { <span class="stringliteral">&quot;group&quot;</span> });</div>
+<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;                stage-&gt;setGoal(<span class="stringliteral">&quot;ready&quot;</span>);</div>
+<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;                stage-&gt;restrictDirection(moveit::task_constructor::stages::MoveTo::FORWARD);</div>
+<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;                task_.add(std::move(stage));</div>
+<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;        }</div>
+<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; </div>
+<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;        <span class="keywordflow">return</span> task_;</div>
+<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;}</div>
+<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; </div>
+<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; </div>
+<div class="line"><a name="l01162"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c"> 1162</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">Moveit_mediator::rewrite_task_template</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* r, moveit_msgs::CollisionObject&amp; source, tf2::Transform&amp; target){</div>
+<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;    tf2::Transform t(tf2::Quaternion(source.pose.orientation.x, source.pose.orientation.y, source.pose.orientation.z, source.pose.orientation.w), tf2::Vector3(source.pose.position.x, source.pose.position.y, source.pose.position.z));</div>
+<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;    <span class="comment">// unique ids cartesian, samplimg, interpolation, ready, hand_open, pick_up</span></div>
+<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; </div>
+<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;    std::string support_surface1 = <span class="stringliteral">&quot;nichts&quot;</span>;</div>
+<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;    std::string support_surface2 = <span class="stringliteral">&quot;nichts&quot;</span>;</div>
+<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; </div>
+<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;        XmlRpc::XmlRpcValue task;</div>
+<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;task/stages&quot;</span>, task);</div>
+<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; </div>
+<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; </div>
+<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; </div>
+<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* ar : <a class="code" href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">robots_</a>){</div>
+<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;        std::string str;</div>
+<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;        <span class="keywordflow">if</span>(ar-&gt;check_single_object_collision(t, str)) support_surface1 = str;</div>
+<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;        <span class="keywordflow">if</span>(ar-&gt;check_single_object_collision(target, str)) support_surface2= str;</div>
+<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;    }</div>
+<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; </div>
+<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;        <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classMoveit__robot.html">Moveit_robot</a>*<span class="keyword">&gt;</span>(r);</div>
+<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;    </div>
+<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;%f %f %f source&quot;</span>, t.getOrigin().getX(), t.getOrigin().getY(), t.getOrigin().getZ());</div>
+<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; </div>
+<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;surface1 %s&quot;</span>, support_surface1.c_str());</div>
+<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;surface2 %s&quot;</span>, support_surface2.c_str());</div>
+<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; </div>
+<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; </div>
+<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/task/properties/group&quot;</span>, r-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>());</div>
+<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/task/properties/eef&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;eef&quot;</span>]);</div>
+<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/task/properties/hand_grasping_frame&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand_grasping_frame&quot;</span>]);</div>
+<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/task/properties/ik_frame&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>]);</div>
+<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;/task/properties/hand&quot;</span>, mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand&quot;</span>]);</div>
+<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; </div>
+<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;    XmlRpc::XmlRpcValue a, b, c, d, e, h;</div>
+<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;    a[<span class="stringliteral">&quot;group&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand&quot;</span>];</div>
+<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;    e[<span class="stringliteral">&quot;joint_model_group_name&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;hand&quot;</span>];</div>
+<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; </div>
+<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;    b = task[4][<span class="stringliteral">&quot;stages&quot;</span>];</div>
+<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;    b[1][<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;properties&quot;</span>][<span class="stringliteral">&quot;object&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160;    b[3][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;    b[2][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;    b[2][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>] = e;</div>
+<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; </div>
+<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;    c = task[6][<span class="stringliteral">&quot;stages&quot;</span>];</div>
+<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; </div>
+<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;    c[0][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;    c[0][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>] = support_surface2;</div>
+<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;    c[3][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;    c[6][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;    c[4][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;    c[4][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>] = e;</div>
+<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160; </div>
+<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;    c[2][<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;pose&quot;</span>][<span class="stringliteral">&quot;point&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>]= <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(target.getOrigin().getX());</div>
+<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;    c[2][<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;pose&quot;</span>][<span class="stringliteral">&quot;point&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>]= <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(target.getOrigin().getY());</div>
+<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;    c[2][<span class="stringliteral">&quot;stage&quot;</span>][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;pose&quot;</span>][<span class="stringliteral">&quot;point&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>]= <span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span>(target.getOrigin().getZ());</div>
+<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; </div>
+<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; </div>
+<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;    task[2][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; </div>
+<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;    XmlRpc::XmlRpcValue connect, f, g;</div>
+<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;    f[r-&gt;<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()] = <span class="stringliteral">&quot;sampling&quot;</span>;</div>
+<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;    g[<span class="stringliteral">&quot;source&quot;</span>] = <span class="stringliteral">&quot;PARENT&quot;</span>;</div>
+<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;    connect[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;Connect&quot;</span>;</div>
+<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;    connect[<span class="stringliteral">&quot;group_planner_vector&quot;</span>] = f;</div>
+<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;    connect[<span class="stringliteral">&quot;propertiesConfigureInitFrom&quot;</span>] = g;</div>
+<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;    task[5] = connect;</div>
+<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;    task[3] = connect;</div>
+<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; </div>
+<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;    a.clear();</div>
+<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;    e.clear();</div>
+<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;    a[<span class="stringliteral">&quot;link&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;    a[<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.07;</div>
+<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;    a[<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2;</div>
+<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;    c[5][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;    b[0][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;    a[<span class="stringliteral">&quot;min_distance&quot;</span>] = 0.1;</div>
+<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;    a[<span class="stringliteral">&quot;max_distance&quot;</span>] = 0.2;</div>
+<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160;    c[1][<span class="stringliteral">&quot;properties&quot;</span>] = a;</div>
+<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; </div>
+<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;    e[<span class="stringliteral">&quot;object&quot;</span>] = <span class="stringliteral">&quot;bottle&quot;</span>;</div>
+<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;    e[<span class="stringliteral">&quot;link&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;    b[4][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;attach_object&quot;</span>] = e;</div>
+<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;    c[4][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;detach_object&quot;</span>] = e;</div>
+<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;    c[2][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;    c[5][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>][<span class="stringliteral">&quot;header&quot;</span>][<span class="stringliteral">&quot;frame_id&quot;</span>]  = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;    b[1][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;    b[6][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;ik_frame&quot;</span>][<span class="stringliteral">&quot;link&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;    b[0][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;direction&quot;</span>][<span class="stringliteral">&quot;vector&quot;</span>][<span class="stringliteral">&quot;header&quot;</span>][<span class="stringliteral">&quot;frame_id&quot;</span>] = mr-&gt;<a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>()[<span class="stringliteral">&quot;ik_frame&quot;</span>];</div>
+<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; </div>
+<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;    b[5][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;    b[5][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>] = support_surface1;</div>
+<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;    b[7][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;first&quot;</span>] = source.id;</div>
+<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;    b[7][<span class="stringliteral">&quot;set&quot;</span>][<span class="stringliteral">&quot;allow_collisions&quot;</span>][<span class="stringliteral">&quot;second&quot;</span>] = support_surface1;</div>
+<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; </div>
+<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;    task[6][<span class="stringliteral">&quot;stages&quot;</span>] = c;</div>
+<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;    task[4][<span class="stringliteral">&quot;stages&quot;</span>] = b;</div>
+<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; </div>
+<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>-&gt;setParam(<span class="stringliteral">&quot;task/stages&quot;</span>, task);</div>
+<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; </div>
+<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;}</div>
+<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160; </div>
+<div class="line"><a name="l01262"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf"> 1262</a></span>&#160;<a class="code" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator::Moveit_mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub, std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; nh)</div>
+<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;    : <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>(objects, pub), nh_(nh)</div>
+<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;    , sampling_planner_(std::make_unique&lt;moveit::task_constructor::solvers::PipelinePlanner&gt;())</div>
+<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;    , cartesian_planner_(std::make_unique&lt;moveit::task_constructor::solvers::CartesianPath&gt;())</div>
+<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;    , psi_(std::make_unique&lt;moveit::planning_interface::PlanningSceneInterface&gt;())</div>
+<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;    , mgi_(std::make_shared&lt;moveit::planning_interface::MoveGroupInterface&gt;(<span class="stringliteral">&quot;panda_arms&quot;</span>))</div>
+<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;    , planning_scene_diff_publisher_(std::make_shared&lt;ros::Publisher&gt;(nh_-&gt;advertise&lt;moveit_msgs::PlanningScene&gt;(<span class="stringliteral">&quot;planning_scene&quot;</span>, 1)))</div>
+<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160;    , planning_scene_monitor_(std::make_shared&lt;planning_scene_monitor::PlanningSceneMonitor&gt;(<span class="stringliteral">&quot;robot_description&quot;</span>))</div>
+<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;        , job_reader_(std::make_unique&lt;<a class="code" href="classJob__reader.html">Job_reader</a>&gt;(nh_))</div>
+<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;    , cuboid_reader_(std::make_unique&lt;<a class="code" href="classCuboid__reader.html">Cuboid_reader</a>&gt;(nh)) {</div>
+<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; </div>
+<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; </div>
+<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>-&gt;getPlanningScene()){</div>
+<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;            <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>-&gt;startPublishingPlanningScene(planning_scene_monitor::PlanningSceneMonitor::UPDATE_SCENE,</div>
+<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;                                                              <span class="stringliteral">&quot;planning_scene&quot;</span>);</div>
+<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;            <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>-&gt;getPlanningScene()-&gt;setName(<span class="stringliteral">&quot;planning_scene&quot;</span>);</div>
+<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;        } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;            ROS_ERROR_STREAM_NAMED(<span class="stringliteral">&quot;test&quot;</span>, <span class="stringliteral">&quot;Planning scene not configured&quot;</span>);</div>
+<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;            <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;        }</div>
+<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; </div>
+<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;        robot_model_loader::RobotModelLoaderPtr robot_model_loader;</div>
+<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;        robot_model_loader = std::make_shared&lt;robot_model_loader::RobotModelLoader&gt;(<span class="stringliteral">&quot;robot_description&quot;</span>);</div>
+<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;        <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a> = robot_model_loader-&gt;getModel();</div>
+<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;        <a class="code" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a> = std::make_shared&lt;planning_scene::PlanningScene&gt;(<a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>);</div>
+<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; </div>
+<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;        <span class="comment">// planner </span></div>
+<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;        <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>-&gt;setProperty(<span class="stringliteral">&quot;goal_joint_tolerance&quot;</span>, 1e-5);</div>
+<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; </div>
+<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;        <span class="comment">// cartesian</span></div>
+<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;            <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>-&gt;setMaxVelocityScaling(1.0);</div>
+<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;            <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>-&gt;setMaxAccelerationScaling(1.0);</div>
+<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;            <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>-&gt;setStepSize(.01);</div>
+<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160; </div>
+<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160;    };</div>
+<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMoveit__mediator_html_a40026b9dc0519dbb0bb4e649cdebab37"><div class="ttname"><a href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">Moveit_mediator::planning_scene_diff_publisher_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::Publisher &gt; planning_scene_diff_publisher_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00064">moveit_mediator.h:64</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ad10c0b3b2e683870e784262123ba779c"><div class="ttname"><a href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">Moveit_robot::map</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00048">moveit_robot.h:48</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_a7b52336368bd778fafb637ca2f20fc04"><div class="ttname"><a href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">Moveit_robot::mgi_hand</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00044">moveit_robot.h:44</a></div></div>
+<div class="ttc" id="aclassRobot_html_aeb6c8c47edbcc561f15b00d551a045e6"><div class="ttname"><a href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot::observers</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; observers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00029">robot.h:29</a></div></div>
+<div class="ttc" id="aclassCollision__helper_html"><div class="ttname"><a href="classCollision__helper.html">Collision_helper</a></div><div class="ttdef"><b>Definition:</b> <a href="collision__helper_8h_source.html#l00010">collision_helper.h:10</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html"><div class="ttname"><a href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00013">wing_moveit_decorator.h:13</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a054489ae555d8ecd197b23d09e40be47"><div class="ttname"><a href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator::publish_tables</a></div><div class="ttdeci">void publish_tables()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00024">moveit_mediator.cpp:24</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a77b4aae7790bdd2a24a2941d9fca43b3"><div class="ttname"><a href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator::set_wings</a></div><div class="ttdeci">void set_wings(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00087">moveit_mediator.cpp:87</a></div></div>
+<div class="ttc" id="aclassJob__reader_html"><div class="ttname"><a href="classJob__reader.html">Job_reader</a></div><div class="ttdoc">Job reader.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00016">job_reader.h:16</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_a94dee8fbe873155ed5ed8b65c6189d90"><div class="ttname"><a href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">Wing_moveit_decorator::markers</a></div><div class="ttdeci">moveit_msgs::CollisionObject * markers()</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00021">wing_moveit_decorator.h:21</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aeea1b8bf554a8a338f6548a100624b30"><div class="ttname"><a href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">Moveit_mediator::cartesian_planner_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::task_constructor::solvers::CartesianPath &gt; cartesian_planner_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00070">moveit_mediator.h:70</a></div></div>
+<div class="ttc" id="aclassCuboid__reader_html"><div class="ttname"><a href="classCuboid__reader.html">Cuboid_reader</a></div><div class="ttdoc">Cuboid reader.</div><div class="ttdef"><b>Definition:</b> <a href="cuboid__reader_8h_source.html#l00017">cuboid_reader.h:17</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a9673dc2802ed32e576ff58bde8dc52eb"><div class="ttname"><a href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">Moveit_mediator::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00056">moveit_mediator.h:56</a></div></div>
+<div class="ttc" id="aclassCollision__helper_html_a0969d2a29f043ad3509bf174ecc103ec"><div class="ttname"><a href="classCollision__helper.html#a0969d2a29f043ad3509bf174ecc103ec">Collision_helper::collision_detector</a></div><div class="ttdeci">bool collision_detector(const std::string &amp;object1_name, const std::string &amp;object2_name)</div><div class="ttdef"><b>Definition:</b> <a href="collision__helper_8cpp_source.html#l00005">collision_helper.cpp:5</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a08a10d6b7faba5468f45182667be7b4d"><div class="ttname"><a href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">Moveit_mediator::job_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Job_reader &gt; job_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00073">moveit_mediator.h:73</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ad95fe10af2afc29db1dc5bab04d314dd"><div class="ttname"><a href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">Moveit_mediator::cuboid_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Cuboid_reader &gt; cuboid_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00074">moveit_mediator.h:74</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_ae7e91c3c5ac234ee1d1bd2d7d6128bc8"><div class="ttname"><a href="classAbstract__mediator.html#ae7e91c3c5ac234ee1d1bd2d7d6128bc8">Abstract_mediator::wings_</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; Abstract_robot_element * &gt; &gt; wings_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00040">impl/abstract_mediator.h:40</a></div></div>
+<div class="ttc" id="amoveit__mediator_8cpp_html_a83e709b064acbbdd1ba1382937d57cec"><div class="ttname"><a href="moveit__mediator_8cpp.html#a83e709b064acbbdd1ba1382937d57cec">task__</a></div><div class="ttdeci">thread_local moveit::task_constructor::Task task__</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00008">moveit_mediator.cpp:8</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a061e0ca9e84b36ec1bf33a6bd4104417"><div class="ttname"><a href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">Moveit_mediator::merge_ps</a></div><div class="ttdeci">void merge_ps(moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, Moveit_robot *mr)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00828">moveit_mediator.cpp:828</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab20eabb5f72715df3bb9305d216ea66a"><div class="ttname"><a href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00061">moveit_mediator.cpp:61</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a1883a9e06be1b1684b76bd44f5925bf3"><div class="ttname"><a href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator::parallel_exec</a></div><div class="ttdeci">void parallel_exec(Moveit_robot &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00871">moveit_mediator.cpp:871</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a43b776b7aaf2d7203c5bc860cdc6dc5b"><div class="ttname"><a href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00014">moveit_mediator.cpp:14</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a4c349f21f00ee6ec4cbb290557fe6a39"><div class="ttname"><a href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">Moveit_mediator::psi_</a></div><div class="ttdeci">std::unique_ptr&lt; moveit::planning_interface::PlanningSceneInterface &gt; psi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00062">moveit_mediator.h:62</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a9ac25277f557f65084d0245ecd8246bf"><div class="ttname"><a href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator::Moveit_mediator</a></div><div class="ttdeci">Moveit_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l01262">moveit_mediator.cpp:1262</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a5724e8b5966c640ff005f4aaae48f2a4"><div class="ttname"><a href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">Moveit_mediator::merge_acm</a></div><div class="ttdeci">void merge_acm(moveit_msgs::PlanningScene &amp;in)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00812">moveit_mediator.cpp:812</a></div></div>
+<div class="ttc" id="amoveit__mediator_8cpp_html_a07c246a655c93c294c5895333d59f9fb"><div class="ttname"><a href="moveit__mediator_8cpp.html#a07c246a655c93c294c5895333d59f9fb">etsg_</a></div><div class="ttdeci">thread_local moveit_task_constructor_msgs::ExecuteTaskSolutionGoal etsg_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00009">moveit_mediator.cpp:9</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab9a1f61e86fa295e426f751ff7ea8838"><div class="ttname"><a href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">Moveit_mediator::setup_task</a></div><div class="ttdeci">void setup_task()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00098">moveit_mediator.cpp:98</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab864f0b277826dafff1944d9f884acff"><div class="ttname"><a href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00067">moveit_mediator.cpp:67</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_adb99cac7a2807485330065b7019f7f2d"><div class="ttname"><a href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">Moveit_mediator::acm_</a></div><div class="ttdeci">std::map&lt; std::string, std::vector&lt; uint8_t &gt; &gt; acm_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00076">moveit_mediator.h:76</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a31a36d397814aff398138b7ce8583155"><div class="ttname"><a href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">Moveit_mediator::sampling_planner_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::task_constructor::solvers::PipelinePlanner &gt; sampling_planner_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00069">moveit_mediator.h:69</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ae5368a1e8034689de7c2fd15c680b7e5"><div class="ttname"><a href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">Moveit_mediator::planning_scene_monitor_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_scene_monitor::PlanningSceneMonitor &gt; planning_scene_monitor_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00065">moveit_mediator.h:65</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a613cd260bba43012848ea0a80452cf09"><div class="ttname"><a href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">Moveit_mediator::ps_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_scene::PlanningScene &gt; ps_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00063">moveit_mediator.h:63</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html_a66416f41c207636fcf0b5223c2f70061"><div class="ttname"><a href="classAbstract__mediator.html#a66416f41c207636fcf0b5223c2f70061">Abstract_mediator::robots_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot * &gt; robots_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00035">impl/abstract_mediator.h:35</a></div></div>
+<div class="ttc" id="amoveit__mediator_8h_html"><div class="ttname"><a href="moveit__mediator_8h.html">moveit_mediator.h</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a6913d3c81c3a30d9a628d0fe4756776c"><div class="ttname"><a href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">Moveit_mediator::rewrite_task_template</a></div><div class="ttdeci">void rewrite_task_template(Abstract_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l01162">moveit_mediator.cpp:1162</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a6f4a8f20841b33341c4991ee00fef75e"><div class="ttname"><a href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">Moveit_mediator::robot_model_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::core::RobotModel &gt; robot_model_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00057">moveit_mediator.h:57</a></div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7eddff501a2c3a3d5feb6c2ec4b016e0"><div class="ttname"><a href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot::register_observers</a></div><div class="ttdeci">void register_observers(Abstract_robot_element *wd)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00182">robot.cpp:182</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aa330766933e58c781067b1b943ce47a6"><div class="ttname"><a href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">Moveit_mediator::tasks_</a></div><div class="ttdeci">std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt; &gt; &gt; tasks_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00077">moveit_mediator.h:77</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a7582bb7618f935c486681d9435fc02e5"><div class="ttname"><a href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">Moveit_mediator::create_Task</a></div><div class="ttdeci">moveit::task_constructor::Task create_Task(Moveit_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00877">moveit_mediator.cpp:877</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aae1a6378021b727fdfd1f1f3816b41c6"><div class="ttname"><a href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">Moveit_mediator::task_planner</a></div><div class="ttdeci">void task_planner()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00696">moveit_mediator.cpp:696</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="amoveit__mediator_8cpp_html_a3b3de631e576c4bb7c9567578f6f4ad2"><div class="ttname"><a href="moveit__mediator_8cpp.html#a3b3de631e576c4bb7c9567578f6f4ad2">task_writing</a></div><div class="ttdeci">std::mutex task_writing</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00011">moveit_mediator.cpp:11</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ac23f8ce7d2961979821f7678b551f5c4"><div class="ttname"><a href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">Moveit_robot::mgi</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00043">moveit_robot.h:43</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a3196ded3639d69478121db539eaa3d1f"><div class="ttname"><a href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00076">moveit_mediator.cpp:76</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__mediator_8h.html b/doc/html/moveit__mediator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..e0e249348ccee5f4304b615aa8af0e980bc8488d
--- /dev/null
+++ b/doc/html/moveit__mediator_8h.html
@@ -0,0 +1,158 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_mediator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">moveit_mediator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+<code>#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</code><br />
+<code>#include &lt;moveit/kinematic_constraints/utils.h&gt;</code><br />
+<code>#include &lt;moveit_visual_tools/moveit_visual_tools.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="moveit__robot_8h_source.html">impl/moveit_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__moveit__decorator_8h_source.html">impl/wing_moveit_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="collision__helper_8h_source.html">impl/collision_helper.h</a>&quot;</code><br />
+<code>#include &lt;moveit/task_constructor/task.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/compute_ik.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/connect.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/current_state.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/generate_grasp_pose.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/generate_place_pose.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/generate_pose.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/modify_planning_scene.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/move_relative.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/move_to.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/predicate_filter.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/solvers/cartesian_path.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/solvers/pipeline_planner.h&gt;</code><br />
+<code>#include &lt;moveit_task_constructor_msgs/ExecuteTaskSolutionAction.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/properties.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/solvers/joint_interpolation.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/solvers/planner_interface.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stage.h&gt;</code><br />
+<code>#include &lt;moveit/task_constructor/stages/fixed_state.h&gt;</code><br />
+<code>#include &lt;eigen_conversions/eigen_msg.h&gt;</code><br />
+<code>#include &lt;moveit/trajectory_execution_manager/trajectory_execution_manager.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene_monitor/current_state_monitor.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene_monitor/planning_scene_monitor.h&gt;</code><br />
+<code>#include &lt;moveit/moveit_cpp/moveit_cpp.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="job__reader_8h_source.html">reader/job_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="cuboid__reader_8h_source.html">reader/cuboid_reader.h</a>&quot;</code><br />
+<code>#include &lt;stdint.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_mediator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__mediator_8h__incl.png" border="0" usemap="#moveit__mediator_8h" alt=""/></div>
+<map name="moveit__mediator_8h" id="moveit__mediator_8h">
+<area shape="rect" title=" " alt="" coords="2693,5,2840,32"/>
+<area shape="rect" title=" " alt="" coords="1535,452,1614,479"/>
+<area shape="rect" title=" " alt="" coords="387,259,579,315"/>
+<area shape="rect" title=" " alt="" coords="93,266,312,307"/>
+<area shape="rect" title=" " alt="" coords="603,266,810,307"/>
+<area shape="rect" title=" " alt="" coords="835,266,1008,307"/>
+<area shape="rect" title=" " alt="" coords="1185,259,1341,315"/>
+<area shape="rect" title=" " alt="" coords="1365,266,1581,307"/>
+<area shape="rect" title=" " alt="" coords="1667,87,1837,129"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="1355,95,1541,121"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1606,273,1767,300"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1077,184,1179,211"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="973,95,1128,121"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="559,184,779,211"/>
+<area shape="rect" href="collision__helper_8h.html" title=" " alt="" coords="93,370,262,397"/>
+<area shape="rect" title=" " alt="" coords="1861,87,2041,129"/>
+<area shape="rect" title=" " alt="" coords="2065,87,2245,129"/>
+<area shape="rect" title=" " alt="" coords="2269,87,2449,129"/>
+<area shape="rect" title=" " alt="" coords="2473,87,2653,129"/>
+<area shape="rect" title=" " alt="" coords="2677,80,2857,136"/>
+<area shape="rect" title=" " alt="" coords="2881,80,3061,136"/>
+<area shape="rect" title=" " alt="" coords="3085,87,3267,129"/>
+<area shape="rect" title=" " alt="" coords="3291,80,3474,136"/>
+<area shape="rect" title=" " alt="" coords="3498,87,3678,129"/>
+<area shape="rect" title=" " alt="" coords="3702,87,3882,129"/>
+<area shape="rect" title=" " alt="" coords="3907,87,4091,129"/>
+<area shape="rect" title=" " alt="" coords="4115,87,4301,129"/>
+<area shape="rect" title=" " alt="" coords="4325,87,4523,129"/>
+<area shape="rect" title=" " alt="" coords="4547,87,4802,129"/>
+<area shape="rect" title=" " alt="" coords="4826,87,5006,129"/>
+<area shape="rect" title=" " alt="" coords="5031,87,5239,129"/>
+<area shape="rect" title=" " alt="" coords="5263,87,5465,129"/>
+<area shape="rect" title=" " alt="" coords="5490,87,5670,129"/>
+<area shape="rect" title=" " alt="" coords="5694,87,5874,129"/>
+<area shape="rect" title=" " alt="" coords="5898,87,6081,129"/>
+<area shape="rect" title=" " alt="" coords="6105,80,6330,136"/>
+<area shape="rect" title=" " alt="" coords="6355,80,6528,136"/>
+<area shape="rect" title=" " alt="" coords="6553,80,6738,136"/>
+<area shape="rect" title=" " alt="" coords="6762,87,6961,129"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="2496,184,2645,211"/>
+<area shape="rect" href="cuboid__reader_8h.html" title=" " alt="" coords="2670,184,2842,211"/>
+<area shape="rect" title=" " alt="" coords="6985,95,7055,121"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1612,363,1761,404"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="2085,184,2245,211"/>
+<area shape="rect" title=" " alt="" coords="2322,273,2435,300"/>
+<area shape="rect" title=" " alt="" coords="1781,184,1913,211"/>
+<area shape="rect" title=" " alt="" coords="1937,184,2010,211"/>
+<area shape="rect" title=" " alt="" coords="2320,184,2472,211"/>
+<area shape="rect" title=" " alt="" coords="1406,184,1538,211"/>
+<area shape="rect" title=" " alt="" coords="1614,184,1757,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__mediator_8h__dep__incl.png" border="0" usemap="#moveit__mediator_8hdep" alt=""/></div>
+<map name="moveit__mediator_8hdep" id="moveit__mediator_8hdep">
+<area shape="rect" title=" " alt="" coords="239,5,385,32"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="127,80,316,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,155,173,181"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="340,80,465,107"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="490,80,651,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,155,402,181"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__mediator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__mediator.html">Moveit_mediator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__mediator_8h__dep__incl.map b/doc/html/moveit__mediator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..af55176a27e072d00fb24442d047f53071c29e4d
--- /dev/null
+++ b/doc/html/moveit__mediator_8h__dep__incl.map
@@ -0,0 +1,8 @@
+<map id="moveit_mediator.h" name="moveit_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="239,5,385,32"/>
+<area shape="rect" id="node2" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="127,80,316,107"/>
+<area shape="rect" id="node3" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,155,173,181"/>
+<area shape="rect" id="node5" href="$cell__routine_8cpp.html" title=" " alt="" coords="340,80,465,107"/>
+<area shape="rect" id="node6" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="490,80,651,107"/>
+<area shape="rect" id="node4" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,155,402,181"/>
+</map>
diff --git a/doc/html/moveit__mediator_8h__dep__incl.md5 b/doc/html/moveit__mediator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0206c89e532a84bc0e8437bdd285f7c54c5b22c4
--- /dev/null
+++ b/doc/html/moveit__mediator_8h__dep__incl.md5
@@ -0,0 +1 @@
+4174ec8729a8d67c2eb52d622a1fbaa6
\ No newline at end of file
diff --git a/doc/html/moveit__mediator_8h__dep__incl.png b/doc/html/moveit__mediator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ba9ca8343ef7d1d3e74992bc2ab6d6c35502b5b6
Binary files /dev/null and b/doc/html/moveit__mediator_8h__dep__incl.png differ
diff --git a/doc/html/moveit__mediator_8h__incl.map b/doc/html/moveit__mediator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..3c7d8a1574cc945036480d7b24356a89687c85b0
--- /dev/null
+++ b/doc/html/moveit__mediator_8h__incl.map
@@ -0,0 +1,52 @@
+<map id="moveit_mediator.h" name="moveit_mediator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="2693,5,2840,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1535,452,1614,479"/>
+<area shape="rect" id="node3" title=" " alt="" coords="387,259,579,315"/>
+<area shape="rect" id="node4" title=" " alt="" coords="93,266,312,307"/>
+<area shape="rect" id="node5" title=" " alt="" coords="603,266,810,307"/>
+<area shape="rect" id="node6" title=" " alt="" coords="835,266,1008,307"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1185,259,1341,315"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1365,266,1581,307"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1667,87,1837,129"/>
+<area shape="rect" id="node10" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="1355,95,1541,121"/>
+<area shape="rect" id="node11" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1606,273,1767,300"/>
+<area shape="rect" id="node13" href="$robot_8h.html" title=" " alt="" coords="1077,184,1179,211"/>
+<area shape="rect" id="node21" href="$moveit__robot_8h.html" title=" " alt="" coords="973,95,1128,121"/>
+<area shape="rect" id="node22" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="559,184,779,211"/>
+<area shape="rect" id="node23" href="$collision__helper_8h.html" title=" " alt="" coords="93,370,262,397"/>
+<area shape="rect" id="node24" title=" " alt="" coords="1861,87,2041,129"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2065,87,2245,129"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2269,87,2449,129"/>
+<area shape="rect" id="node27" title=" " alt="" coords="2473,87,2653,129"/>
+<area shape="rect" id="node28" title=" " alt="" coords="2677,80,2857,136"/>
+<area shape="rect" id="node29" title=" " alt="" coords="2881,80,3061,136"/>
+<area shape="rect" id="node30" title=" " alt="" coords="3085,87,3267,129"/>
+<area shape="rect" id="node31" title=" " alt="" coords="3291,80,3474,136"/>
+<area shape="rect" id="node32" title=" " alt="" coords="3498,87,3678,129"/>
+<area shape="rect" id="node33" title=" " alt="" coords="3702,87,3882,129"/>
+<area shape="rect" id="node34" title=" " alt="" coords="3907,87,4091,129"/>
+<area shape="rect" id="node35" title=" " alt="" coords="4115,87,4301,129"/>
+<area shape="rect" id="node36" title=" " alt="" coords="4325,87,4523,129"/>
+<area shape="rect" id="node37" title=" " alt="" coords="4547,87,4802,129"/>
+<area shape="rect" id="node38" title=" " alt="" coords="4826,87,5006,129"/>
+<area shape="rect" id="node39" title=" " alt="" coords="5031,87,5239,129"/>
+<area shape="rect" id="node40" title=" " alt="" coords="5263,87,5465,129"/>
+<area shape="rect" id="node41" title=" " alt="" coords="5490,87,5670,129"/>
+<area shape="rect" id="node42" title=" " alt="" coords="5694,87,5874,129"/>
+<area shape="rect" id="node43" title=" " alt="" coords="5898,87,6081,129"/>
+<area shape="rect" id="node44" title=" " alt="" coords="6105,80,6330,136"/>
+<area shape="rect" id="node45" title=" " alt="" coords="6355,80,6528,136"/>
+<area shape="rect" id="node46" title=" " alt="" coords="6553,80,6738,136"/>
+<area shape="rect" id="node47" title=" " alt="" coords="6762,87,6961,129"/>
+<area shape="rect" id="node48" href="$job__reader_8h.html" title=" " alt="" coords="2496,184,2645,211"/>
+<area shape="rect" id="node49" href="$cuboid__reader_8h.html" title=" " alt="" coords="2670,184,2842,211"/>
+<area shape="rect" id="node50" title=" " alt="" coords="6985,95,7055,121"/>
+<area shape="rect" id="node12" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1612,363,1761,404"/>
+<area shape="rect" id="node14" href="$wing__reader_8h.html" title=" " alt="" coords="2085,184,2245,211"/>
+<area shape="rect" id="node15" title=" " alt="" coords="2322,273,2435,300"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1781,184,1913,211"/>
+<area shape="rect" id="node17" title=" " alt="" coords="1937,184,2010,211"/>
+<area shape="rect" id="node18" title=" " alt="" coords="2320,184,2472,211"/>
+<area shape="rect" id="node19" title=" " alt="" coords="1406,184,1538,211"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1614,184,1757,211"/>
+</map>
diff --git a/doc/html/moveit__mediator_8h__incl.md5 b/doc/html/moveit__mediator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b3a9020699c0655d37d5b0e2998619dd96e8932f
--- /dev/null
+++ b/doc/html/moveit__mediator_8h__incl.md5
@@ -0,0 +1 @@
+a0665292aea1c4832e01bffdd9bb07f4
\ No newline at end of file
diff --git a/doc/html/moveit__mediator_8h__incl.png b/doc/html/moveit__mediator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..da7541fe7ed6987803c259d7744851280da027a7
Binary files /dev/null and b/doc/html/moveit__mediator_8h__incl.png differ
diff --git a/doc/html/moveit__mediator_8h_source.html b/doc/html/moveit__mediator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..4c82abd2a5e016b85f3a808bbc44d350b7f2dc31
--- /dev/null
+++ b/doc/html/moveit__mediator_8h_source.html
@@ -0,0 +1,193 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_mediator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_mediator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__mediator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MOVEIT_MEDIATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MOVEIT_MEDIATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;moveit/kinematic_constraints/utils.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;moveit_visual_tools/moveit_visual_tools.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__mediator_8h.html">impl/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__robot_8h.html">impl/moveit_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__moveit__decorator_8h.html">impl/wing_moveit_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="collision__helper_8h.html">impl/collision_helper.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/task.h&gt;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/compute_ik.h&gt;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/connect.h&gt;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/current_state.h&gt;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/generate_grasp_pose.h&gt;</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/generate_place_pose.h&gt;</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/generate_pose.h&gt;</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/modify_planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/move_relative.h&gt;</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/move_to.h&gt;</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/predicate_filter.h&gt;</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/solvers/cartesian_path.h&gt;</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/solvers/pipeline_planner.h&gt;</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &lt;moveit_task_constructor_msgs/ExecuteTaskSolutionAction.h&gt;</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/properties.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/solvers/joint_interpolation.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/solvers/planner_interface.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stage.h&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &lt;moveit/task_constructor/stages/fixed_state.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &lt;eigen_conversions/eigen_msg.h&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &lt;moveit/trajectory_execution_manager/trajectory_execution_manager.h&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_monitor/current_state_monitor.h&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_monitor/planning_scene_monitor.h&gt;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &lt;moveit/moveit_cpp/moveit_cpp.h&gt;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="job__reader_8h.html">reader/job_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cuboid__reader_8h.html">reader/cuboid_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html">   54</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMoveit__mediator.html">Moveit_mediator</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__mediator.html">Abstract_mediator</a>{</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">   56</a></span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; <a class="code" href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">nh_</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">   57</a></span>&#160;    std::shared_ptr&lt;moveit::core::RobotModel&gt; <a class="code" href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">robot_model_</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">   58</a></span>&#160;    std::shared_ptr&lt;moveit_visual_tools::MoveItVisualTools&gt; <a class="code" href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">visual_tools_</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="comment">// planning Interfaces and planing scene </span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">   61</a></span>&#160;    std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">   62</a></span>&#160;    std::unique_ptr&lt;moveit::planning_interface::PlanningSceneInterface&gt; <a class="code" href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">psi_</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">   63</a></span>&#160;    std::shared_ptr&lt;planning_scene::PlanningScene&gt; <a class="code" href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">ps_</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">   64</a></span>&#160;    std::shared_ptr&lt;ros::Publisher&gt; <a class="code" href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">planning_scene_diff_publisher_</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">   65</a></span>&#160;    std::shared_ptr&lt;planning_scene_monitor::PlanningSceneMonitor&gt; <a class="code" href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">planning_scene_monitor_</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="comment">// task constructor</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">   69</a></span>&#160;    std::shared_ptr&lt;moveit::task_constructor::solvers::PipelinePlanner&gt; <a class="code" href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">sampling_planner_</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">   70</a></span>&#160;    std::shared_ptr&lt;moveit::task_constructor::solvers::CartesianPath&gt; <a class="code" href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">cartesian_planner_</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">   71</a></span>&#160;    std::map&lt;std::string, std::vector&lt;moveit::task_constructor::Task&gt;&gt; <a class="code" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">   73</a></span>&#160;    std::unique_ptr&lt;Job_reader&gt; <a class="code" href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">job_reader_</a>; </div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">   74</a></span>&#160;    std::unique_ptr&lt;Cuboid_reader&gt; <a class="code" href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">cuboid_reader_</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; </div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">   76</a></span>&#160;    std::map&lt;std::string, std::vector&lt;uint8_t&gt;&gt; <a class="code" href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">acm_</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">   77</a></span>&#160;    std::multimap&lt;std::string, std::pair&lt;tf2::Vector3, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt;&gt; <a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator</a>(std::vector&lt;std::vector&lt;tf2::Transform&gt;&gt; objects, ros::Publisher* pub, std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; nh);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">setup_task</a>();</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">   87</a></span>&#160;    <span class="keyword">inline</span> std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">mgi</a>() {<span class="keywordflow">return</span> <a class="code" href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">mgi_</a>;};</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160; </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160; </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">check_collision</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">mediate</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">build_wings</a>(std::bitset&lt;3&gt;&amp; wing,<span class="keywordtype">int</span>&amp; robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">set_wings</a>(std::vector&lt;std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; wbp) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">connect_robots</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">merge_ps</a>(moveit_msgs::PlanningScene&amp; out, moveit_msgs::PlanningScene* in, <a class="code" href="classMoveit__robot.html">Moveit_robot</a>* mr);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">merge_acm</a>(moveit_msgs::PlanningScene&amp; in);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">task_planner</a>();</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">publish_tables</a>();</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">rewrite_task_template</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* r, moveit_msgs::CollisionObject&amp; source, tf2::Transform&amp; target);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">parallel_exec</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>&amp; r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    moveit::task_constructor::Task <a class="code" href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">create_Task</a>(<a class="code" href="classMoveit__robot.html">Moveit_robot</a>* r, moveit_msgs::CollisionObject&amp; source, tf2::Transform&amp; target);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">  105</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;std::string, std::vector&lt;moveit::task_constructor::Task&gt;&gt;&amp; <a class="code" href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">task_map</a>(){<span class="keywordflow">return</span> <a class="code" href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">task_map_</a>;};</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">  106</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">set_tasks</a>(std::multimap&lt;std::string, std::pair&lt;tf2::Vector3, std::queue&lt;moveit_task_constructor_msgs::ExecuteTaskSolutionGoal&gt;&gt;&gt;&amp; tasks) {<a class="code" href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">tasks_</a> = tasks;};</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;};</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMoveit__mediator_html_a40026b9dc0519dbb0bb4e649cdebab37"><div class="ttname"><a href="classMoveit__mediator.html#a40026b9dc0519dbb0bb4e649cdebab37">Moveit_mediator::planning_scene_diff_publisher_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::Publisher &gt; planning_scene_diff_publisher_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00064">moveit_mediator.h:64</a></div></div>
+<div class="ttc" id="amoveit__robot_8h_html"><div class="ttname"><a href="moveit__robot_8h.html">moveit_robot.h</a></div></div>
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="acuboid__reader_8h_html"><div class="ttname"><a href="cuboid__reader_8h.html">cuboid_reader.h</a></div></div>
+<div class="ttc" id="ajob__reader_8h_html"><div class="ttname"><a href="job__reader_8h.html">job_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__mediator_html"><div class="ttname"><a href="classAbstract__mediator.html">Abstract_mediator</a></div><div class="ttdoc">Abstract mediator.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__mediator_8h_source.html#l00033">impl/abstract_mediator.h:33</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a054489ae555d8ecd197b23d09e40be47"><div class="ttname"><a href="classMoveit__mediator.html#a054489ae555d8ecd197b23d09e40be47">Moveit_mediator::publish_tables</a></div><div class="ttdeci">void publish_tables()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00024">moveit_mediator.cpp:24</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ac3d550e1db30b83e6f6bf25536dd5c78"><div class="ttname"><a href="classMoveit__mediator.html#ac3d550e1db30b83e6f6bf25536dd5c78">Moveit_mediator::mgi_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00061">moveit_mediator.h:61</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a77b4aae7790bdd2a24a2941d9fca43b3"><div class="ttname"><a href="classMoveit__mediator.html#a77b4aae7790bdd2a24a2941d9fca43b3">Moveit_mediator::set_wings</a></div><div class="ttdeci">void set_wings(std::vector&lt; std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wbp) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00087">moveit_mediator.cpp:87</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab11f9ee155b39e5809f75d9dfd44f34c"><div class="ttname"><a href="classMoveit__mediator.html#ab11f9ee155b39e5809f75d9dfd44f34c">Moveit_mediator::task_map</a></div><div class="ttdeci">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt; &amp; task_map()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00105">moveit_mediator.h:105</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aeea1b8bf554a8a338f6548a100624b30"><div class="ttname"><a href="classMoveit__mediator.html#aeea1b8bf554a8a338f6548a100624b30">Moveit_mediator::cartesian_planner_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::task_constructor::solvers::CartesianPath &gt; cartesian_planner_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00070">moveit_mediator.h:70</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a9673dc2802ed32e576ff58bde8dc52eb"><div class="ttname"><a href="classMoveit__mediator.html#a9673dc2802ed32e576ff58bde8dc52eb">Moveit_mediator::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00056">moveit_mediator.h:56</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_acf8ec374cb01f96ef41dea8bb0bae963"><div class="ttname"><a href="classMoveit__mediator.html#acf8ec374cb01f96ef41dea8bb0bae963">Moveit_mediator::set_tasks</a></div><div class="ttdeci">void set_tasks(std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt;&gt;&gt; &amp;tasks)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00106">moveit_mediator.h:106</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a08a10d6b7faba5468f45182667be7b4d"><div class="ttname"><a href="classMoveit__mediator.html#a08a10d6b7faba5468f45182667be7b4d">Moveit_mediator::job_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Job_reader &gt; job_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00073">moveit_mediator.h:73</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ad95fe10af2afc29db1dc5bab04d314dd"><div class="ttname"><a href="classMoveit__mediator.html#ad95fe10af2afc29db1dc5bab04d314dd">Moveit_mediator::cuboid_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Cuboid_reader &gt; cuboid_reader_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00074">moveit_mediator.h:74</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a061e0ca9e84b36ec1bf33a6bd4104417"><div class="ttname"><a href="classMoveit__mediator.html#a061e0ca9e84b36ec1bf33a6bd4104417">Moveit_mediator::merge_ps</a></div><div class="ttdeci">void merge_ps(moveit_msgs::PlanningScene &amp;out, moveit_msgs::PlanningScene *in, Moveit_robot *mr)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00828">moveit_mediator.cpp:828</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab20eabb5f72715df3bb9305d216ea66a"><div class="ttname"><a href="classMoveit__mediator.html#ab20eabb5f72715df3bb9305d216ea66a">Moveit_mediator::check_collision</a></div><div class="ttdeci">bool check_collision(const int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00061">moveit_mediator.cpp:61</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a1883a9e06be1b1684b76bd44f5925bf3"><div class="ttname"><a href="classMoveit__mediator.html#a1883a9e06be1b1684b76bd44f5925bf3">Moveit_mediator::parallel_exec</a></div><div class="ttdeci">void parallel_exec(Moveit_robot &amp;r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00871">moveit_mediator.cpp:871</a></div></div>
+<div class="ttc" id="awing__moveit__decorator_8h_html"><div class="ttname"><a href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a43b776b7aaf2d7203c5bc860cdc6dc5b"><div class="ttname"><a href="classMoveit__mediator.html#a43b776b7aaf2d7203c5bc860cdc6dc5b">Moveit_mediator::connect_robots</a></div><div class="ttdeci">void connect_robots(Abstract_robot *robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00014">moveit_mediator.cpp:14</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a4c349f21f00ee6ec4cbb290557fe6a39"><div class="ttname"><a href="classMoveit__mediator.html#a4c349f21f00ee6ec4cbb290557fe6a39">Moveit_mediator::psi_</a></div><div class="ttdeci">std::unique_ptr&lt; moveit::planning_interface::PlanningSceneInterface &gt; psi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00062">moveit_mediator.h:62</a></div></div>
+<div class="ttc" id="aimpl_2abstract__mediator_8h_html"><div class="ttname"><a href="impl_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a9ac25277f557f65084d0245ecd8246bf"><div class="ttname"><a href="classMoveit__mediator.html#a9ac25277f557f65084d0245ecd8246bf">Moveit_mediator::Moveit_mediator</a></div><div class="ttdeci">Moveit_mediator(std::vector&lt; std::vector&lt; tf2::Transform &gt;&gt; objects, ros::Publisher *pub, std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;nh)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l01262">moveit_mediator.cpp:1262</a></div></div>
+<div class="ttc" id="acollision__helper_8h_html"><div class="ttname"><a href="collision__helper_8h.html">collision_helper.h</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a56194f2f70bc9b469a8422dfef0cf602"><div class="ttname"><a href="classMoveit__mediator.html#a56194f2f70bc9b469a8422dfef0cf602">Moveit_mediator::task_map_</a></div><div class="ttdeci">std::map&lt; std::string, std::vector&lt; moveit::task_constructor::Task &gt; &gt; task_map_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00071">moveit_mediator.h:71</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a5724e8b5966c640ff005f4aaae48f2a4"><div class="ttname"><a href="classMoveit__mediator.html#a5724e8b5966c640ff005f4aaae48f2a4">Moveit_mediator::merge_acm</a></div><div class="ttdeci">void merge_acm(moveit_msgs::PlanningScene &amp;in)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00812">moveit_mediator.cpp:812</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab9a1f61e86fa295e426f751ff7ea8838"><div class="ttname"><a href="classMoveit__mediator.html#ab9a1f61e86fa295e426f751ff7ea8838">Moveit_mediator::setup_task</a></div><div class="ttdeci">void setup_task()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00098">moveit_mediator.cpp:98</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ab864f0b277826dafff1944d9f884acff"><div class="ttname"><a href="classMoveit__mediator.html#ab864f0b277826dafff1944d9f884acff">Moveit_mediator::mediate</a></div><div class="ttdeci">void mediate() override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00067">moveit_mediator.cpp:67</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_adb99cac7a2807485330065b7019f7f2d"><div class="ttname"><a href="classMoveit__mediator.html#adb99cac7a2807485330065b7019f7f2d">Moveit_mediator::acm_</a></div><div class="ttdeci">std::map&lt; std::string, std::vector&lt; uint8_t &gt; &gt; acm_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00076">moveit_mediator.h:76</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html"><div class="ttname"><a href="classMoveit__mediator.html">Moveit_mediator</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00054">moveit_mediator.h:54</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a31a36d397814aff398138b7ce8583155"><div class="ttname"><a href="classMoveit__mediator.html#a31a36d397814aff398138b7ce8583155">Moveit_mediator::sampling_planner_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::task_constructor::solvers::PipelinePlanner &gt; sampling_planner_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00069">moveit_mediator.h:69</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_ae5368a1e8034689de7c2fd15c680b7e5"><div class="ttname"><a href="classMoveit__mediator.html#ae5368a1e8034689de7c2fd15c680b7e5">Moveit_mediator::planning_scene_monitor_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_scene_monitor::PlanningSceneMonitor &gt; planning_scene_monitor_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00065">moveit_mediator.h:65</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a613cd260bba43012848ea0a80452cf09"><div class="ttname"><a href="classMoveit__mediator.html#a613cd260bba43012848ea0a80452cf09">Moveit_mediator::ps_</a></div><div class="ttdeci">std::shared_ptr&lt; planning_scene::PlanningScene &gt; ps_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00063">moveit_mediator.h:63</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a6913d3c81c3a30d9a628d0fe4756776c"><div class="ttname"><a href="classMoveit__mediator.html#a6913d3c81c3a30d9a628d0fe4756776c">Moveit_mediator::rewrite_task_template</a></div><div class="ttdeci">void rewrite_task_template(Abstract_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l01162">moveit_mediator.cpp:1162</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a6f4a8f20841b33341c4991ee00fef75e"><div class="ttname"><a href="classMoveit__mediator.html#a6f4a8f20841b33341c4991ee00fef75e">Moveit_mediator::robot_model_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::core::RobotModel &gt; robot_model_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00057">moveit_mediator.h:57</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aac9157796fc133cdab1b22ef66ef8889"><div class="ttname"><a href="classMoveit__mediator.html#aac9157796fc133cdab1b22ef66ef8889">Moveit_mediator::mgi</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00087">moveit_mediator.h:87</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aa330766933e58c781067b1b943ce47a6"><div class="ttname"><a href="classMoveit__mediator.html#aa330766933e58c781067b1b943ce47a6">Moveit_mediator::tasks_</a></div><div class="ttdeci">std::multimap&lt; std::string, std::pair&lt; tf2::Vector3, std::queue&lt; moveit_task_constructor_msgs::ExecuteTaskSolutionGoal &gt; &gt; &gt; tasks_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00077">moveit_mediator.h:77</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a7582bb7618f935c486681d9435fc02e5"><div class="ttname"><a href="classMoveit__mediator.html#a7582bb7618f935c486681d9435fc02e5">Moveit_mediator::create_Task</a></div><div class="ttdeci">moveit::task_constructor::Task create_Task(Moveit_robot *r, moveit_msgs::CollisionObject &amp;source, tf2::Transform &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00877">moveit_mediator.cpp:877</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_aae1a6378021b727fdfd1f1f3816b41c6"><div class="ttname"><a href="classMoveit__mediator.html#aae1a6378021b727fdfd1f1f3816b41c6">Moveit_mediator::task_planner</a></div><div class="ttdeci">void task_planner()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00696">moveit_mediator.cpp:696</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_af2b6e5e089fbfc61afb5f0c25a320571"><div class="ttname"><a href="classMoveit__mediator.html#af2b6e5e089fbfc61afb5f0c25a320571">Moveit_mediator::visual_tools_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit_visual_tools::MoveItVisualTools &gt; visual_tools_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8h_source.html#l00058">moveit_mediator.h:58</a></div></div>
+<div class="ttc" id="aclassMoveit__mediator_html_a3196ded3639d69478121db539eaa3d1f"><div class="ttname"><a href="classMoveit__mediator.html#a3196ded3639d69478121db539eaa3d1f">Moveit_mediator::build_wings</a></div><div class="ttdeci">void build_wings(std::bitset&lt; 3 &gt; &amp;wing, int &amp;robot) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__mediator_8cpp_source.html#l00076">moveit_mediator.cpp:76</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__panel_8cpp.html b/doc/html/moveit__panel_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..5b460d93e0cf4dc9eeab218abee20f371ef4b363
--- /dev/null
+++ b/doc/html/moveit__panel_8cpp.html
@@ -0,0 +1,57 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_panel.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_panel.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="moveit__panel_8h_source.html">robot_element/observers/moveit_panel.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_panel.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__panel_8cpp__incl.png" border="0" usemap="#moveit__panel_8cpp" alt=""/></div>
+<map name="moveit__panel_8cpp" id="moveit__panel_8cpp">
+<area shape="rect" title=" " alt="" coords="323,5,462,32"/>
+<area shape="rect" href="moveit__panel_8h.html" title=" " alt="" coords="300,80,485,121"/>
+<area shape="rect" title=" " alt="" coords="40,363,118,389"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="145,273,320,315"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="36,177,221,218"/>
+<area shape="rect" title=" " alt="" coords="296,169,488,225"/>
+<area shape="rect" title=" " alt="" coords="512,177,731,218"/>
+<area shape="rect" title=" " alt="" coords="756,177,962,218"/>
+<area shape="rect" title=" " alt="" coords="987,177,1160,218"/>
+<area shape="rect" title=" " alt="" coords="142,363,341,389"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__panel_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__panel_8cpp__incl.map b/doc/html/moveit__panel_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..cb1dd823a1815c61a1c364f3e0b2195f78ac7e87
--- /dev/null
+++ b/doc/html/moveit__panel_8cpp__incl.map
@@ -0,0 +1,12 @@
+<map id="moveit_panel.cpp" name="moveit_panel.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="323,5,462,32"/>
+<area shape="rect" id="node2" href="$moveit__panel_8h.html" title=" " alt="" coords="300,80,485,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="40,363,118,389"/>
+<area shape="rect" id="node4" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="145,273,320,315"/>
+<area shape="rect" id="node6" href="$panel_8h.html" title=" " alt="" coords="36,177,221,218"/>
+<area shape="rect" id="node7" title=" " alt="" coords="296,169,488,225"/>
+<area shape="rect" id="node8" title=" " alt="" coords="512,177,731,218"/>
+<area shape="rect" id="node9" title=" " alt="" coords="756,177,962,218"/>
+<area shape="rect" id="node10" title=" " alt="" coords="987,177,1160,218"/>
+<area shape="rect" id="node5" title=" " alt="" coords="142,363,341,389"/>
+</map>
diff --git a/doc/html/moveit__panel_8cpp__incl.md5 b/doc/html/moveit__panel_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..4843dad08bc79f28c133929656d9fe6d9cb622c8
--- /dev/null
+++ b/doc/html/moveit__panel_8cpp__incl.md5
@@ -0,0 +1 @@
+7a73a85bd598d1e08770d5b01ea144c6
\ No newline at end of file
diff --git a/doc/html/moveit__panel_8cpp__incl.png b/doc/html/moveit__panel_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ca465ef74dfa749d91c30b9da6ebf5d29339916e
Binary files /dev/null and b/doc/html/moveit__panel_8cpp__incl.png differ
diff --git a/doc/html/moveit__panel_8cpp_source.html b/doc/html/moveit__panel_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3bc7ec2bc6f265932f3db76d504abfe9bea62aa
--- /dev/null
+++ b/doc/html/moveit__panel_8cpp_source.html
@@ -0,0 +1,113 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_panel.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_panel.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__panel_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="moveit__panel_8h.html">robot_element/observers/moveit_panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">    4</a></span>&#160;<a class="code" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel::Moveit_panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size) </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;: <a class="code" href="classPanel.html">Panel</a>(name, tf, size)</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;{</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">    marker_.id = name_;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">    marker_.header.frame_id = &quot;world&quot;;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">    marker_.primitives.resize(1);</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">    marker_.primitives[0].type = marker_.primitives[0].BOX;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">    marker_.primitives[0].dimensions.resize(3);</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">    marker_.primitives[0].dimensions[0] = size_.getX();</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">    marker_.primitives[0].dimensions[1] = size_.getY();</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">    marker_.primitives[0].dimensions[2] = size_.getZ();</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">    marker_.primitive_poses.resize(1);</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">    marker_.primitive_poses[0].position.x = world_tf_.getOrigin().getX();</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">    marker_.primitive_poses[0].position.y = world_tf_.getOrigin().getY();</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">    marker_.primitive_poses[0].position.z = world_tf_.getOrigin().getZ() - size_.getZ()/2;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">    marker_.primitive_poses[0].orientation.x = world_tf_.getRotation().getX();</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">    marker_.primitive_poses[0].orientation.y = world_tf_.getRotation().getY();</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">    marker_.primitive_poses[0].orientation.z = world_tf_.getRotation().getZ();</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">    marker_.primitive_poses[0].orientation.w = world_tf_.getRotation().getW();</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">    marker_.operation = marker_.ADD;</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;};</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">   32</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel::update</a>(tf2::Transform&amp; tf){</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <a class="code" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel::update</a>(tf);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.id = <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">    marker_.pose.position.x = world_tf_.getOrigin().getX();</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">    marker_.pose.position.y = world_tf_.getOrigin().getY();</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">    marker_.pose.position.x = world_tf_.getOrigin().getZ() - size_.getZ()/2;;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">    marker_.pose.orientation.x = world_tf_.getRotation().getX();</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">    marker_.pose.orientation.x = world_tf_.getRotation().getY();</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">    marker_.pose.orientation.x = world_tf_.getRotation().getZ();</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">    marker_.pose.orientation.x = world_tf_.getRotation().getW();</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives.resize(1);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].type = <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].BOX;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].dimensions.resize(3);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].dimensions[0] = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX();</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].dimensions[1] = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY();</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitives[0].dimensions[2] = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getZ();</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses.resize(1);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].position.x = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getX();</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].position.y = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getY();</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].position.z = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getZ() - <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getZ()/2;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].orientation.x = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getX();</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].orientation.y = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getY();</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].orientation.z = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getZ();</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.primitive_poses[0].orientation.w = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getW();</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.operation = <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>.ADD;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;}</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassPanel_html_a2a70a607d1521d4df2360891afd2106f"><div class="ttname"><a href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00014">panel.h:14</a></div></div>
+<div class="ttc" id="aclassPanel_html"><div class="ttname"><a href="classPanel.html">Panel</a></div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00007">panel.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_adcaadf1f399625d67747ce746a0cc928"><div class="ttname"><a href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00009">robot_element/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_a0f9f446bd773e9ae6345511a66499331"><div class="ttname"><a href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8cpp_source.html#l00032">moveit_panel.cpp:32</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_a4ca4542a08ce50772b2101fa4cd5e24f"><div class="ttname"><a href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">Moveit_panel::marker_</a></div><div class="ttdeci">moveit_msgs::CollisionObject marker_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8h_source.html#l00015">moveit_panel.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_ace0a415c711a11c45d6a2e58aa707fb5"><div class="ttname"><a href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel::Moveit_panel</a></div><div class="ttdeci">Moveit_panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8cpp_source.html#l00004">moveit_panel.cpp:4</a></div></div>
+<div class="ttc" id="amoveit__panel_8h_html"><div class="ttname"><a href="moveit__panel_8h.html">moveit_panel.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__panel_8h.html b/doc/html/moveit__panel_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..f717fa8344f1f9ba85521c317c98df543f91e318
--- /dev/null
+++ b/doc/html/moveit__panel_8h.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_panel.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">moveit_panel.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="panel_8h_source.html">robot_element/observers/panel.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_panel.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__panel_8h__incl.png" border="0" usemap="#moveit__panel_8h" alt=""/></div>
+<map name="moveit__panel_8h" id="moveit__panel_8h">
+<area shape="rect" title=" " alt="" coords="331,5,454,32"/>
+<area shape="rect" title=" " alt="" coords="40,273,119,300"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="145,184,320,225"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="36,87,221,129"/>
+<area shape="rect" title=" " alt="" coords="297,80,489,136"/>
+<area shape="rect" title=" " alt="" coords="513,87,731,129"/>
+<area shape="rect" title=" " alt="" coords="756,87,963,129"/>
+<area shape="rect" title=" " alt="" coords="987,87,1161,129"/>
+<area shape="rect" title=" " alt="" coords="143,273,341,300"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__panel_8h__dep__incl.png" border="0" usemap="#moveit__panel_8hdep" alt=""/></div>
+<map name="moveit__panel_8hdep" id="moveit__panel_8hdep">
+<area shape="rect" title=" " alt="" coords="13,5,136,32"/>
+<area shape="rect" href="moveit__panel_8cpp.html" title=" " alt="" coords="5,80,144,107"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__panel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__panel.html">Moveit_panel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__panel_8h__dep__incl.map b/doc/html/moveit__panel_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..973222bfef2a5f3c7a7aa561d8b3a9042ec7696e
--- /dev/null
+++ b/doc/html/moveit__panel_8h__dep__incl.map
@@ -0,0 +1,4 @@
+<map id="moveit_panel.h" name="moveit_panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="13,5,136,32"/>
+<area shape="rect" id="node2" href="$moveit__panel_8cpp.html" title=" " alt="" coords="5,80,144,107"/>
+</map>
diff --git a/doc/html/moveit__panel_8h__dep__incl.md5 b/doc/html/moveit__panel_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..4767448fb8bf7dbe189f246b91c497b57c7bd468
--- /dev/null
+++ b/doc/html/moveit__panel_8h__dep__incl.md5
@@ -0,0 +1 @@
+956479740ad72313395435724cdd22e0
\ No newline at end of file
diff --git a/doc/html/moveit__panel_8h__dep__incl.png b/doc/html/moveit__panel_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..52d0e178ed6c6749e25614aed455c3c1912231dc
Binary files /dev/null and b/doc/html/moveit__panel_8h__dep__incl.png differ
diff --git a/doc/html/moveit__panel_8h__incl.map b/doc/html/moveit__panel_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..24c0b39ca4eb7de3d4bc5074b52807a01d0f9903
--- /dev/null
+++ b/doc/html/moveit__panel_8h__incl.map
@@ -0,0 +1,11 @@
+<map id="moveit_panel.h" name="moveit_panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="331,5,454,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="40,273,119,300"/>
+<area shape="rect" id="node3" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="145,184,320,225"/>
+<area shape="rect" id="node5" href="$panel_8h.html" title=" " alt="" coords="36,87,221,129"/>
+<area shape="rect" id="node6" title=" " alt="" coords="297,80,489,136"/>
+<area shape="rect" id="node7" title=" " alt="" coords="513,87,731,129"/>
+<area shape="rect" id="node8" title=" " alt="" coords="756,87,963,129"/>
+<area shape="rect" id="node9" title=" " alt="" coords="987,87,1161,129"/>
+<area shape="rect" id="node4" title=" " alt="" coords="143,273,341,300"/>
+</map>
diff --git a/doc/html/moveit__panel_8h__incl.md5 b/doc/html/moveit__panel_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e1afb917e2ea4d04a79057caaa88d6ce150b1fc2
--- /dev/null
+++ b/doc/html/moveit__panel_8h__incl.md5
@@ -0,0 +1 @@
+0bfd26110322d7ad05c457921812d7b1
\ No newline at end of file
diff --git a/doc/html/moveit__panel_8h__incl.png b/doc/html/moveit__panel_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b8d4db81dce2c1fdb8353b81378685410ed44793
Binary files /dev/null and b/doc/html/moveit__panel_8h__incl.png differ
diff --git a/doc/html/moveit__panel_8h_source.html b/doc/html/moveit__panel_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c380beb5f3584e5575265aa3514dacb5afe26091
--- /dev/null
+++ b/doc/html/moveit__panel_8h_source.html
@@ -0,0 +1,71 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_panel.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_panel.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__panel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MOVEIT_PANEL_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MOVEIT_PANEL_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panel_8h.html">robot_element/observers/panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="classMoveit__panel.html">   13</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMoveit__panel.html">Moveit_panel</a>  : <span class="keyword">public</span> <a class="code" href="classPanel.html">Panel</a>{</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">   15</a></span>&#160;    moveit_msgs::CollisionObject <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel</a>(std::string <a class="code" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="code" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">   21</a></span>&#160;    <span class="keyword">inline</span> moveit_msgs::CollisionObject&amp; <a class="code" href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">marker</a>() {<span class="keywordflow">return</span> <a class="code" href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">marker_</a>;}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;};</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassMoveit__panel_html"><div class="ttname"><a href="classMoveit__panel.html">Moveit_panel</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8h_source.html#l00013">moveit_panel.h:13</a></div></div>
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_a3ea48e6b8a4a0d75297b735ae87e1406"><div class="ttname"><a href="classMoveit__panel.html#a3ea48e6b8a4a0d75297b735ae87e1406">Moveit_panel::marker</a></div><div class="ttdeci">moveit_msgs::CollisionObject &amp; marker()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8h_source.html#l00021">moveit_panel.h:21</a></div></div>
+<div class="ttc" id="aclassPanel_html_abc3a14b055ba9004fa5ebdb34cd5e583"><div class="ttname"><a href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00018">panel.h:18</a></div></div>
+<div class="ttc" id="aclassPanel_html"><div class="ttname"><a href="classPanel.html">Panel</a></div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00007">panel.h:7</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_a0f9f446bd773e9ae6345511a66499331"><div class="ttname"><a href="classMoveit__panel.html#a0f9f446bd773e9ae6345511a66499331">Moveit_panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8cpp_source.html#l00032">moveit_panel.cpp:32</a></div></div>
+<div class="ttc" id="aclassPanel_html_af6a63c29e5a5573b369482528c4b4818"><div class="ttname"><a href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00019">panel.h:19</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_a4ca4542a08ce50772b2101fa4cd5e24f"><div class="ttname"><a href="classMoveit__panel.html#a4ca4542a08ce50772b2101fa4cd5e24f">Moveit_panel::marker_</a></div><div class="ttdeci">moveit_msgs::CollisionObject marker_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8h_source.html#l00015">moveit_panel.h:15</a></div></div>
+<div class="ttc" id="aclassMoveit__panel_html_ace0a415c711a11c45d6a2e58aa707fb5"><div class="ttname"><a href="classMoveit__panel.html#ace0a415c711a11c45d6a2e58aa707fb5">Moveit_panel::Moveit_panel</a></div><div class="ttdeci">Moveit_panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__panel_8cpp_source.html#l00004">moveit_panel.cpp:4</a></div></div>
+<div class="ttc" id="apanel_8h_html"><div class="ttname"><a href="panel_8h.html">panel.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__robot_8h.html b/doc/html/moveit__robot_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..824acbd8614f09d2a3e1974b40868dbde8beb931
--- /dev/null
+++ b/doc/html/moveit__robot_8h.html
@@ -0,0 +1,101 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_robot.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">moveit_robot.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_pipeline/planning_pipeline.h&gt;</code><br />
+<code>#include &lt;gb_grasp/MapGenerator.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for moveit_robot.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__robot_8h__incl.png" border="0" usemap="#moveit__robot_8h" alt=""/></div>
+<map name="moveit__robot_8h" id="moveit__robot_8h">
+<area shape="rect" title=" " alt="" coords="3198,5,3319,32"/>
+<area shape="rect" title=" " alt="" coords="1465,459,1543,486"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1851,87,1952,114"/>
+<area shape="rect" title=" " alt="" coords="3231,80,3417,121"/>
+<area shape="rect" title=" " alt="" coords="3442,87,3633,114"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1006,184,1167,211"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1267,363,1416,404"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1259,273,1423,315"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1448,281,1547,307"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1599,184,1798,211"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1571,281,1667,307"/>
+<area shape="rect" title=" " alt="" coords="1872,169,2064,225"/>
+<area shape="rect" title=" " alt="" coords="2088,177,2307,218"/>
+<area shape="rect" title=" " alt="" coords="2331,177,2538,218"/>
+<area shape="rect" title=" " alt="" coords="2562,169,2718,225"/>
+<area shape="rect" title=" " alt="" coords="2743,177,2916,218"/>
+<area shape="rect" title=" " alt="" coords="2940,177,3156,218"/>
+<area shape="rect" title=" " alt="" coords="1070,459,1269,486"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="853,281,1032,307"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="723,370,927,397"/>
+<area shape="rect" title=" " alt="" coords="896,459,1045,486"/>
+<area shape="rect" title=" " alt="" coords="5,459,157,486"/>
+<area shape="rect" title=" " alt="" coords="182,459,314,486"/>
+<area shape="rect" title=" " alt="" coords="338,459,481,486"/>
+<area shape="rect" title=" " alt="" coords="505,459,618,486"/>
+<area shape="rect" title=" " alt="" coords="642,459,774,486"/>
+<area shape="rect" title=" " alt="" coords="798,459,871,486"/>
+<area shape="rect" title=" " alt="" coords="1293,452,1440,493"/>
+<area shape="rect" title=" " alt="" coords="1741,273,1888,315"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="moveit__robot_8h__dep__incl.png" border="0" usemap="#moveit__robot_8hdep" alt=""/></div>
+<map name="moveit__robot_8hdep" id="moveit__robot_8hdep">
+<area shape="rect" title=" " alt="" coords="214,5,335,32"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="201,80,348,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="100,229,268,256"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="474,155,600,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="261,155,450,181"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="24,155,186,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="292,229,496,256"/>
+</map>
+</div>
+</div>
+<p><a href="moveit__robot_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMoveit__robot.html">Moveit_robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/moveit__robot_8h__dep__incl.map b/doc/html/moveit__robot_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b9c7fa71a7d8d62516ca80584d8e800f314b3aef
--- /dev/null
+++ b/doc/html/moveit__robot_8h__dep__incl.map
@@ -0,0 +1,9 @@
+<map id="moveit_robot.h" name="moveit_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="214,5,335,32"/>
+<area shape="rect" id="node2" href="$moveit__mediator_8h.html" title=" " alt="" coords="201,80,348,107"/>
+<area shape="rect" id="node4" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="100,229,268,256"/>
+<area shape="rect" id="node6" href="$cell__routine_8cpp.html" title=" " alt="" coords="474,155,600,181"/>
+<area shape="rect" id="node3" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="261,155,450,181"/>
+<area shape="rect" id="node7" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="24,155,186,181"/>
+<area shape="rect" id="node5" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="292,229,496,256"/>
+</map>
diff --git a/doc/html/moveit__robot_8h__dep__incl.md5 b/doc/html/moveit__robot_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7c591295aaf221d0c7488a797d58a48ab3ee9bf4
--- /dev/null
+++ b/doc/html/moveit__robot_8h__dep__incl.md5
@@ -0,0 +1 @@
+448e817d5b10d11b94dea3f8b272d0c8
\ No newline at end of file
diff --git a/doc/html/moveit__robot_8h__dep__incl.png b/doc/html/moveit__robot_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f78cad900a524903c47f30869eb108712d83229
Binary files /dev/null and b/doc/html/moveit__robot_8h__dep__incl.png differ
diff --git a/doc/html/moveit__robot_8h__incl.map b/doc/html/moveit__robot_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..c21e824bad102767ca7835a643ca510bc9de18a9
--- /dev/null
+++ b/doc/html/moveit__robot_8h__incl.map
@@ -0,0 +1,31 @@
+<map id="moveit_robot.h" name="moveit_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="3198,5,3319,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1465,459,1543,486"/>
+<area shape="rect" id="node3" href="$robot_8h.html" title=" " alt="" coords="1851,87,1952,114"/>
+<area shape="rect" id="node28" title=" " alt="" coords="3231,80,3417,121"/>
+<area shape="rect" id="node29" title=" " alt="" coords="3442,87,3633,114"/>
+<area shape="rect" id="node4" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1006,184,1167,211"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1267,363,1416,404"/>
+<area shape="rect" id="node17" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1259,273,1423,315"/>
+<area shape="rect" id="node18" href="$wing_8h.html" title=" " alt="" coords="1448,281,1547,307"/>
+<area shape="rect" id="node19" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1599,184,1798,211"/>
+<area shape="rect" id="node21" href="$impl_2field_8h.html" title=" " alt="" coords="1571,281,1667,307"/>
+<area shape="rect" id="node22" title=" " alt="" coords="1872,169,2064,225"/>
+<area shape="rect" id="node23" title=" " alt="" coords="2088,177,2307,218"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2331,177,2538,218"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2562,169,2718,225"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2743,177,2916,218"/>
+<area shape="rect" id="node27" title=" " alt="" coords="2940,177,3156,218"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1070,459,1269,486"/>
+<area shape="rect" id="node6" href="$abstract__strategy_8h.html" title=" " alt="" coords="853,281,1032,307"/>
+<area shape="rect" id="node7" href="$abstract__map__loader_8h.html" title=" " alt="" coords="723,370,927,397"/>
+<area shape="rect" id="node8" title=" " alt="" coords="896,459,1045,486"/>
+<area shape="rect" id="node9" title=" " alt="" coords="5,459,157,486"/>
+<area shape="rect" id="node10" title=" " alt="" coords="182,459,314,486"/>
+<area shape="rect" id="node11" title=" " alt="" coords="338,459,481,486"/>
+<area shape="rect" id="node12" title=" " alt="" coords="505,459,618,486"/>
+<area shape="rect" id="node13" title=" " alt="" coords="642,459,774,486"/>
+<area shape="rect" id="node14" title=" " alt="" coords="798,459,871,486"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1293,452,1440,493"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1741,273,1888,315"/>
+</map>
diff --git a/doc/html/moveit__robot_8h__incl.md5 b/doc/html/moveit__robot_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d0ebed81030e82fc3bcdb2209f2f1476386098d6
--- /dev/null
+++ b/doc/html/moveit__robot_8h__incl.md5
@@ -0,0 +1 @@
+cb1c8156ea1f03bda9bba3434c22598d
\ No newline at end of file
diff --git a/doc/html/moveit__robot_8h__incl.png b/doc/html/moveit__robot_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1bd4a3188bfb79c56de7f99755f3b6c8144575c8
Binary files /dev/null and b/doc/html/moveit__robot_8h__incl.png differ
diff --git a/doc/html/moveit__robot_8h_source.html b/doc/html/moveit__robot_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..92fb763efc21d829a97d8b2403903db347a2281d
--- /dev/null
+++ b/doc/html/moveit__robot_8h_source.html
@@ -0,0 +1,105 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: moveit_robot.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">moveit_robot.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="moveit__robot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef MOVEIT_ROBOT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define MOVEIT_ROBOT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_pipeline/planning_pipeline.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;gb_grasp/MapGenerator.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classMoveit__robot.html">   12</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMoveit__robot.html">Moveit_robot</a> : <span class="keyword">public</span> <a class="code" href="classRobot.html">Robot</a>{</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">   14</a></span>&#160;    std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">mgi_</a>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">   15</a></span>&#160;    std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a>;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">   17</a></span>&#160;    std::map&lt;std::string, std::string&gt;  <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>; </div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">   18</a></span>&#160;    std::shared_ptr&lt;MapGenerator&gt; <a class="code" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">grasp_map_generator_</a>;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">   23</a></span>&#160;    <a class="code" href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot</a>(std::string&amp; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>) : <a class="code" href="classRobot.html">Robot</a>(<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>)</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        , <a class="code" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">mgi_</a>(std::make_shared&lt;moveit::planning_interface::MoveGroupInterface&gt;(<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>)){</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        std::stringstream hand_n, ik_frame_n, name_n, base_n;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        hand_n &lt;&lt; <span class="stringliteral">&quot;hand_&quot;</span> &lt;&lt; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>.back();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        ik_frame_n &lt;&lt; <span class="stringliteral">&quot;panda_&quot;</span> &lt;&lt; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>.back() &lt;&lt; <span class="stringliteral">&quot;_link8&quot;</span>;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        base_n &lt;&lt; <span class="stringliteral">&quot;base_&quot;</span> &lt;&lt; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>.back();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a> = std::make_shared&lt;moveit::planning_interface::MoveGroupInterface&gt;(hand_n.str());</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;right_finger&quot;</span>, <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a>-&gt;getLinkNames()[0].c_str()));</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;left_finger&quot;</span>, <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a>-&gt;getLinkNames()[1].c_str()));</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_link&quot;</span>, <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a>-&gt;getLinkNames()[2].c_str()));</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;eef_name&quot;</span>, hand_n.str()));</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_frame&quot;</span>, ik_frame_n.str()));</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_group_name&quot;</span>, hand_n.str()));</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;base&quot;</span>, base_n.str()));</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    }</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">   43</a></span>&#160;    <span class="keyword">inline</span> std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">mgi</a>() {<span class="keywordflow">return</span> <a class="code" href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">mgi_</a>;}</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">   44</a></span>&#160;    <span class="keyword">inline</span> std::shared_ptr&lt;moveit::planning_interface::MoveGroupInterface&gt; <a class="code" href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">mgi_hand</a>() {<span class="keywordflow">return</span> <a class="code" href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">mgi_hand_</a>;}</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">   45</a></span>&#160;    <span class="keyword">inline</span> std::shared_ptr&lt;MapGenerator&gt; <a class="code" href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">grasp_map_generator</a>() {<span class="keywordflow">return</span> <a class="code" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">grasp_map_generator_</a>;}</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">   48</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;std::string, std::string&gt;&amp;  <a class="code" href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">map</a>(){<span class="keywordflow">return</span> <a class="code" href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">map_</a>;}</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">   49</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">set_grasp_map_generator</a>(std::shared_ptr&lt;MapGenerator&gt;<span class="keyword">const</span>&amp; d ){ <a class="code" href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">grasp_map_generator_</a> = d;}</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;};</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ad10c0b3b2e683870e784262123ba779c"><div class="ttname"><a href="classMoveit__robot.html#ad10c0b3b2e683870e784262123ba779c">Moveit_robot::map</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; &amp; map()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00048">moveit_robot.h:48</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_a7b52336368bd778fafb637ca2f20fc04"><div class="ttname"><a href="classMoveit__robot.html#a7b52336368bd778fafb637ca2f20fc04">Moveit_robot::mgi_hand</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00044">moveit_robot.h:44</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_aef61abe18fca3cc07578265d3a2c2c59"><div class="ttname"><a href="classMoveit__robot.html#aef61abe18fca3cc07578265d3a2c2c59">Moveit_robot::mgi_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00014">moveit_robot.h:14</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_a9a70514d5e32fa947dfd54235d806ef0"><div class="ttname"><a href="classMoveit__robot.html#a9a70514d5e32fa947dfd54235d806ef0">Moveit_robot::set_grasp_map_generator</a></div><div class="ttdeci">void set_grasp_map_generator(std::shared_ptr&lt; MapGenerator &gt;const &amp;d)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00049">moveit_robot.h:49</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_a14716dcae3fe594d6b16f10bc58ba226"><div class="ttname"><a href="classMoveit__robot.html#a14716dcae3fe594d6b16f10bc58ba226">Moveit_robot::mgi_hand_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00015">moveit_robot.h:15</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ade0496c9088ddad701fb06ce2a514e8a"><div class="ttname"><a href="classMoveit__robot.html#ade0496c9088ddad701fb06ce2a514e8a">Moveit_robot::grasp_map_generator_</a></div><div class="ttdeci">std::shared_ptr&lt; MapGenerator &gt; grasp_map_generator_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00018">moveit_robot.h:18</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html"><div class="ttname"><a href="classMoveit__robot.html">Moveit_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00012">moveit_robot.h:12</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_aa9551bfab3c080becc7d6d281dd53dcd"><div class="ttname"><a href="classMoveit__robot.html#aa9551bfab3c080becc7d6d281dd53dcd">Moveit_robot::map_</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; map_</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00017">moveit_robot.h:17</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ac3a9f2cfc74a1304a1faea5516252c28"><div class="ttname"><a href="classMoveit__robot.html#ac3a9f2cfc74a1304a1faea5516252c28">Moveit_robot::grasp_map_generator</a></div><div class="ttdeci">std::shared_ptr&lt; MapGenerator &gt; grasp_map_generator()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00045">moveit_robot.h:45</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ab991a44b804dab173ca4c787c105d68a"><div class="ttname"><a href="classMoveit__robot.html#ab991a44b804dab173ca4c787c105d68a">Moveit_robot::Moveit_robot</a></div><div class="ttdeci">Moveit_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00023">moveit_robot.h:23</a></div></div>
+<div class="ttc" id="aclassMoveit__robot_html_ac23f8ce7d2961979821f7678b551f5c4"><div class="ttname"><a href="classMoveit__robot.html#ac23f8ce7d2961979821f7678b551f5c4">Moveit_robot::mgi</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi()</div><div class="ttdef"><b>Definition:</b> <a href="moveit__robot_8h_source.html#l00043">moveit_robot.h:43</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/msg-styles.css b/doc/html/msg-styles.css
new file mode 100644
index 0000000000000000000000000000000000000000..d919faf5a11cfded6b7e9e262c854be023697ef7
--- /dev/null
+++ b/doc/html/msg-styles.css
@@ -0,0 +1,49 @@
+html {
+    background: #333;
+    color: #333;
+    font-family: 'Palatino', serif;
+    font-size: 18px;
+    line-height: 24px;
+    text-align: center;
+    padding: 0px 50px 0px 50px;
+}
+#container {
+    background: white;
+    margin: 25px auto 100px auto;
+    padding: 50px 50px;
+    text-align: left;
+}
+a {
+    text-decoration: none;
+}
+a:hover {
+    text-decoration: underline;
+}
+.msg-title {
+    margin-bottom: 40px;
+    border-bottom: 1px solid #333;
+    padding: 10px 10px 10px 0px;
+}
+.filename {
+    padding: 5px; 
+    background-color: #eee; 
+    border: 1px solid #333;
+}
+.fancy-msg {
+    width: auto;
+    font-size: 14px;
+    line-height: 16px;
+    border: 1px solid #333;
+    padding: 10px; 
+    margin-bottom: 20px;
+}
+
+.raw-msg {
+    font-family: monospace;
+    width: auto;
+    font-size: 14px;
+    line-height: 16px;
+    padding: 5px; 
+    border: 1px solid #333;
+    margin-bottom: 20px;
+}
diff --git a/doc/html/mtc2taskspace_8cpp.html b/doc/html/mtc2taskspace_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd058fcd61fddba60fe16c80392975d443362d81
--- /dev/null
+++ b/doc/html/mtc2taskspace_8cpp.html
@@ -0,0 +1,104 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mtc2taskspace.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">mtc2taskspace.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="task__space__reader_8h_source.html">reader/task_space_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="job__reader_8h_source.html">reader/job_reader.h</a>&quot;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for mtc2taskspace.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="mtc2taskspace_8cpp__incl.png" border="0" usemap="#mtc2taskspace_8cpp" alt=""/></div>
+<map name="mtc2taskspace_8cpp" id="mtc2taskspace_8cpp">
+<area shape="rect" title=" " alt="" coords="665,5,813,32"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="559,155,729,196"/>
+<area shape="rect" title=" " alt="" coords="5,251,64,278"/>
+<area shape="rect" href="task__space__reader_8h.html" title=" " alt="" coords="637,80,840,107"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="864,80,1027,107"/>
+<area shape="rect" href="job__reader_8h.html" title=" " alt="" coords="1051,80,1200,107"/>
+<area shape="rect" title=" " alt="" coords="1059,251,1138,278"/>
+<area shape="rect" title=" " alt="" coords="922,251,1035,278"/>
+<area shape="rect" title=" " alt="" coords="748,251,897,278"/>
+<area shape="rect" title=" " alt="" coords="87,251,286,278"/>
+<area shape="rect" title=" " alt="" coords="310,251,442,278"/>
+<area shape="rect" title=" " alt="" coords="466,251,539,278"/>
+<area shape="rect" title=" " alt="" coords="564,244,724,285"/>
+<area shape="rect" title=" " alt="" coords="1213,162,1397,189"/>
+</map>
+</div>
+</div>
+<p><a href="mtc2taskspace_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="mtc2taskspace_8cpp_source.html#l00008">8</a> of file <a class="el" href="mtc2taskspace_8cpp_source.html">mtc2taskspace.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/mtc2taskspace_8cpp__incl.map b/doc/html/mtc2taskspace_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..9945f5cbf40bddb983b52fc8423dc4bbf3cf3bbe
--- /dev/null
+++ b/doc/html/mtc2taskspace_8cpp__incl.map
@@ -0,0 +1,16 @@
+<map id="mtc2taskspace.cpp" name="mtc2taskspace.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="665,5,813,32"/>
+<area shape="rect" id="node2" href="$abstract__param__reader_8h.html" title=" " alt="" coords="559,155,729,196"/>
+<area shape="rect" id="node9" title=" " alt="" coords="5,251,64,278"/>
+<area shape="rect" id="node11" href="$task__space__reader_8h.html" title=" " alt="" coords="637,80,840,107"/>
+<area shape="rect" id="node12" href="$robot__reader_8h.html" title=" " alt="" coords="864,80,1027,107"/>
+<area shape="rect" id="node13" href="$job__reader_8h.html" title=" " alt="" coords="1051,80,1200,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1059,251,1138,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="922,251,1035,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="748,251,897,278"/>
+<area shape="rect" id="node6" title=" " alt="" coords="87,251,286,278"/>
+<area shape="rect" id="node7" title=" " alt="" coords="310,251,442,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="466,251,539,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="564,244,724,285"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1213,162,1397,189"/>
+</map>
diff --git a/doc/html/mtc2taskspace_8cpp__incl.md5 b/doc/html/mtc2taskspace_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7a30520bf292682a009b597c7fc7c8e017979b63
--- /dev/null
+++ b/doc/html/mtc2taskspace_8cpp__incl.md5
@@ -0,0 +1 @@
+6aa85ee54464678fd7d76b3245e28b8d
\ No newline at end of file
diff --git a/doc/html/mtc2taskspace_8cpp__incl.png b/doc/html/mtc2taskspace_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..3f7d0a6ba019c8049efb85ff9d33f3a23a77b827
Binary files /dev/null and b/doc/html/mtc2taskspace_8cpp__incl.png differ
diff --git a/doc/html/mtc2taskspace_8cpp_source.html b/doc/html/mtc2taskspace_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb1f6785cf24c2a30e1005dd0c25724152320c1f
--- /dev/null
+++ b/doc/html/mtc2taskspace_8cpp_source.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: mtc2taskspace.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">mtc2taskspace.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="mtc2taskspace_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="task__space__reader_8h.html">reader/task_space_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="job__reader_8h.html">reader/job_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">    8</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv){</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    ros::init(argc, argv, <span class="stringliteral">&quot;mtc2taskspace&quot;</span>);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; n(<span class="keyword">new</span> ros::NodeHandle);</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <span class="comment">//std::unique_ptr&lt;Abstract_param_reader&gt; ts_reader(new Task_space_reader(n));</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    std::unique_ptr&lt;Abstract_param_reader&gt; ts_reader(<span class="keyword">new</span> <a class="code" href="classJob__reader.html">Job_reader</a>(n));</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="ajob__reader_8h_html"><div class="ttname"><a href="job__reader_8h.html">job_reader.h</a></div></div>
+<div class="ttc" id="amtc2taskspace_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="mtc2taskspace_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="mtc2taskspace_8cpp_source.html#l00008">mtc2taskspace.cpp:8</a></div></div>
+<div class="ttc" id="aclassJob__reader_html"><div class="ttname"><a href="classJob__reader.html">Job_reader</a></div><div class="ttdoc">Job reader.</div><div class="ttdef"><b>Definition:</b> <a href="job__reader_8h_source.html#l00016">job_reader.h:16</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="atask__space__reader_8h_html"><div class="ttname"><a href="task__space__reader_8h.html">task_space_reader.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/nav_f.png b/doc/html/nav_f.png
new file mode 100644
index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2
Binary files /dev/null and b/doc/html/nav_f.png differ
diff --git a/doc/html/nav_g.png b/doc/html/nav_g.png
new file mode 100644
index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81
Binary files /dev/null and b/doc/html/nav_g.png differ
diff --git a/doc/html/nav_h.png b/doc/html/nav_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..33389b101d9cd9b4c98ad286b5d9c46a6671f650
Binary files /dev/null and b/doc/html/nav_h.png differ
diff --git a/doc/html/open.png b/doc/html/open.png
new file mode 100644
index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b
Binary files /dev/null and b/doc/html/open.png differ
diff --git a/doc/html/panda__decorator_8cpp.html b/doc/html/panda__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..e6c9c15cc775a664df199402f26ef4c049a72ae5
--- /dev/null
+++ b/doc/html/panda__decorator_8cpp.html
@@ -0,0 +1,64 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panda_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li><li class="navelem"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panda_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="panda__decorator_8h_source.html">robot/decorators/panda_decorator.h</a>&quot;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for panda_decorator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="panda__decorator_8cpp__incl.png" border="0" usemap="#panda__decorator_8cpp" alt=""/></div>
+<map name="panda__decorator_8cpp" id="panda__decorator_8cpp">
+<area shape="rect" title=" " alt="" coords="1029,5,1188,32"/>
+<area shape="rect" href="panda__decorator_8h.html" title=" " alt="" coords="953,80,1126,121"/>
+<area shape="rect" title=" " alt="" coords="1150,87,1209,114"/>
+<area shape="rect" title=" " alt="" coords="272,452,351,479"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="132,273,299,300"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="946,169,1133,211"/>
+<area shape="rect" title=" " alt="" coords="5,452,204,479"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="73,363,248,404"/>
+<area shape="rect" title=" " alt="" coords="1898,266,2085,307"/>
+<area shape="rect" title=" " alt="" coords="374,259,566,315"/>
+<area shape="rect" title=" " alt="" coords="590,266,809,307"/>
+<area shape="rect" title=" " alt="" coords="833,266,1040,307"/>
+<area shape="rect" title=" " alt="" coords="1064,259,1220,315"/>
+<area shape="rect" title=" " alt="" coords="1245,266,1418,307"/>
+<area shape="rect" title=" " alt="" coords="1442,266,1658,307"/>
+<area shape="rect" title=" " alt="" coords="1683,273,1873,300"/>
+</map>
+</div>
+</div>
+<p><a href="panda__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panda__decorator_8cpp__incl.map b/doc/html/panda__decorator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..f9eb5f4f9467b656527f6059e65c15736756e0e1
--- /dev/null
+++ b/doc/html/panda__decorator_8cpp__incl.map
@@ -0,0 +1,18 @@
+<map id="panda_decorator.cpp" name="panda_decorator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="1029,5,1188,32"/>
+<area shape="rect" id="node2" href="$panda__decorator_8h.html" title=" " alt="" coords="953,80,1126,121"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1150,87,1209,114"/>
+<area shape="rect" id="node3" title=" " alt="" coords="272,452,351,479"/>
+<area shape="rect" id="node4" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="132,273,299,300"/>
+<area shape="rect" id="node7" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="946,169,1133,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="5,452,204,479"/>
+<area shape="rect" id="node6" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="73,363,248,404"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1898,266,2085,307"/>
+<area shape="rect" id="node9" title=" " alt="" coords="374,259,566,315"/>
+<area shape="rect" id="node10" title=" " alt="" coords="590,266,809,307"/>
+<area shape="rect" id="node11" title=" " alt="" coords="833,266,1040,307"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1064,259,1220,315"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1245,266,1418,307"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1442,266,1658,307"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1683,273,1873,300"/>
+</map>
diff --git a/doc/html/panda__decorator_8cpp__incl.md5 b/doc/html/panda__decorator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..706ce96aa0687356d07cc13e8264fb32c8e1892d
--- /dev/null
+++ b/doc/html/panda__decorator_8cpp__incl.md5
@@ -0,0 +1 @@
+18b8e7bce489109f55f39e581538d11a
\ No newline at end of file
diff --git a/doc/html/panda__decorator_8cpp__incl.png b/doc/html/panda__decorator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..847278f7959638f31a1d4c7acd269d941711c9a6
Binary files /dev/null and b/doc/html/panda__decorator_8cpp__incl.png differ
diff --git a/doc/html/panda__decorator_8cpp_source.html b/doc/html/panda__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2a01b903aa38008afadb953b076b416ecf58f20e
--- /dev/null
+++ b/doc/html/panda__decorator_8cpp_source.html
@@ -0,0 +1,91 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panda_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d623b6b26deaaca15238f927e86bbb46.html">robot</a></li><li class="navelem"><a class="el" href="dir_213ed5268c3d3b5adb84b79e310ac6b7.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panda_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="panda__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panda__decorator_8h.html">robot/decorators/panda_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">    4</a></span>&#160;<a class="code" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator::Panda_decorator</a>(std::unique_ptr&lt;Abstract_robot&gt; next) </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    : <a class="code" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>(std::move(next))</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    {</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;        <a class="code" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">spezifie_root_bounds</a>();</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;penis1&quot;</span>);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <span class="comment">// spezifie_robot_groups();</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    }</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">   14</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator::spezifie_root_bounds</a>(){</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="comment">// root</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds().clear();</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, 0.095f, 0))); <span class="comment">// ++</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, 0.095f, 0))); <span class="comment">// +-</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, -0.095f, 0)));</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">   23</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator::spezifie_robot_groups</a>(){</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    std::stringstream hand_n, ik_frame_n, name_n, base_n;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    std::regex panda_id(<span class="stringliteral">&quot;panda_arm([0-9]+)&quot;</span>), left_finger(<span class="stringliteral">&quot;left_finger&quot;</span>), right_finger(<span class="stringliteral">&quot;right_finger&quot;</span>), hand_link(<span class="stringliteral">&quot;hand_link&quot;</span>);</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    std::regex_match(<a class="code" href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">next_</a>-&gt;name(), match, panda_id);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    hand_n &lt;&lt; <span class="stringliteral">&quot;hand_&quot;</span> &lt;&lt; match[1];</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    ik_frame_n &lt;&lt; <span class="stringliteral">&quot;panda_&quot;</span> &lt;&lt; match[1] &lt;&lt; <span class="stringliteral">&quot;_link8&quot;</span>;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    base_n &lt;&lt; <span class="stringliteral">&quot;base_&quot;</span> &lt;&lt; match[1];</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; link : <a class="code" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a>-&gt;getLinkNames()){</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(link, match, left_finger)) <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;left_finger&quot;</span>, link));</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(link, match, right_finger)) <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;right_finger&quot;</span>, link));</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(link, match, hand_link)) <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_link&quot;</span>, link));</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    }</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">mgi_hand_</a> = std::make_shared&lt;moveit::planning_interface::MoveGroupInterface&gt;(hand_n.str());</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;eef_name&quot;</span>, hand_n.str()));</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_frame&quot;</span>, ik_frame_n.str()));</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;hand_group_name&quot;</span>, hand_n.str()));</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">map_</a>.insert(std::make_pair&lt;std::string, std::string&gt;(<span class="stringliteral">&quot;base&quot;</span>, base_n.str()));</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassPanda__decorator_html_aa06d746a0cb43e4f30780289f606e5cb"><div class="ttname"><a href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator::Panda_decorator</a></div><div class="ttdeci">Panda_decorator(std::unique_ptr&lt; Abstract_robot &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00004">panda_decorator.cpp:4</a></div></div>
+<div class="ttc" id="aclassPanda__decorator_html_ac84d81aaf6ba3bf7c251886ad73c48e6"><div class="ttname"><a href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator::spezifie_robot_groups</a></div><div class="ttdeci">void spezifie_robot_groups() override</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00023">panda_decorator.cpp:23</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a86429ab626717a96cd34de271bb75c5c"><div class="ttname"><a href="classAbstract__robot__decorator.html#a86429ab626717a96cd34de271bb75c5c">Abstract_robot_decorator::map_</a></div><div class="ttdeci">std::map&lt; std::string, std::string &gt; map_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00024">abstract_robot_decorator.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a9bdb9eee650e25e17647b8626ae74c27"><div class="ttname"><a href="classAbstract__robot__decorator.html#a9bdb9eee650e25e17647b8626ae74c27">Abstract_robot_decorator::mgi_hand_</a></div><div class="ttdeci">std::shared_ptr&lt; moveit::planning_interface::MoveGroupInterface &gt; mgi_hand_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00022">abstract_robot_decorator.h:22</a></div></div>
+<div class="ttc" id="aclassPanda__decorator_html_a09b74248a99c3ce02dc909a3871bb876"><div class="ttname"><a href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator::spezifie_root_bounds</a></div><div class="ttdeci">void spezifie_root_bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00014">panda_decorator.cpp:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_a41ecd95589c9236d7fc82921276339c7"><div class="ttname"><a href="classAbstract__robot__decorator.html#a41ecd95589c9236d7fc82921276339c7">Abstract_robot_decorator::next_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_robot &gt; next_</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00020">abstract_robot_decorator.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html"><div class="ttname"><a href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00018">abstract_robot_decorator.h:18</a></div></div>
+<div class="ttc" id="apanda__decorator_8h_html"><div class="ttname"><a href="panda__decorator_8h.html">panda_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panda__decorator_8h.html b/doc/html/panda__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..2be2b9c95a9bc3d10b927eea9791588e397b1c99
--- /dev/null
+++ b/doc/html/panda__decorator_8h.html
@@ -0,0 +1,81 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panda_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li><li class="navelem"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">panda_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__robot__decorator_8h_source.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for panda_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="panda__decorator_8h__incl.png" border="0" usemap="#panda__decorator_8h" alt=""/></div>
+<map name="panda__decorator_8h" id="panda__decorator_8h">
+<area shape="rect" title=" " alt="" coords="968,5,1111,32"/>
+<area shape="rect" title=" " alt="" coords="272,363,351,389"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="132,184,299,211"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="946,80,1133,121"/>
+<area shape="rect" title=" " alt="" coords="5,363,204,389"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="73,273,248,315"/>
+<area shape="rect" title=" " alt="" coords="1898,177,2085,218"/>
+<area shape="rect" title=" " alt="" coords="374,169,566,225"/>
+<area shape="rect" title=" " alt="" coords="590,177,809,218"/>
+<area shape="rect" title=" " alt="" coords="833,177,1040,218"/>
+<area shape="rect" title=" " alt="" coords="1064,169,1220,225"/>
+<area shape="rect" title=" " alt="" coords="1245,177,1418,218"/>
+<area shape="rect" title=" " alt="" coords="1442,177,1658,218"/>
+<area shape="rect" title=" " alt="" coords="1683,184,1873,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="panda__decorator_8h__dep__incl.png" border="0" usemap="#panda__decorator_8hdep" alt=""/></div>
+<map name="panda__decorator_8hdep" id="panda__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="108,5,251,32"/>
+<area shape="rect" href="panda__decorator_8cpp.html" title=" " alt="" coords="5,87,164,114"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="188,80,360,121"/>
+</map>
+</div>
+</div>
+<p><a href="panda__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanda__decorator.html">Panda_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panda__decorator_8h__dep__incl.map b/doc/html/panda__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..387d463ddc2e3a6b3fa7136503aef20fdbb9ed8e
--- /dev/null
+++ b/doc/html/panda__decorator_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="panda_decorator.h" name="panda_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="108,5,251,32"/>
+<area shape="rect" id="node2" href="$panda__decorator_8cpp.html" title=" " alt="" coords="5,87,164,114"/>
+<area shape="rect" id="node3" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="188,80,360,121"/>
+</map>
diff --git a/doc/html/panda__decorator_8h__dep__incl.md5 b/doc/html/panda__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0a2a3c8958ec5c7d389b1e10e68e473527a70811
--- /dev/null
+++ b/doc/html/panda__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+581d313df92351e9113f0781bad10792
\ No newline at end of file
diff --git a/doc/html/panda__decorator_8h__dep__incl.png b/doc/html/panda__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1462ca6bbf1845761716046bfbf1af69d8ef6f37
Binary files /dev/null and b/doc/html/panda__decorator_8h__dep__incl.png differ
diff --git a/doc/html/panda__decorator_8h__incl.map b/doc/html/panda__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..070692596952b7175cb14b9bdedc72466508d497
--- /dev/null
+++ b/doc/html/panda__decorator_8h__incl.map
@@ -0,0 +1,16 @@
+<map id="panda_decorator.h" name="panda_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="968,5,1111,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="272,363,351,389"/>
+<area shape="rect" id="node3" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="132,184,299,211"/>
+<area shape="rect" id="node6" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="946,80,1133,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="5,363,204,389"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="73,273,248,315"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1898,177,2085,218"/>
+<area shape="rect" id="node8" title=" " alt="" coords="374,169,566,225"/>
+<area shape="rect" id="node9" title=" " alt="" coords="590,177,809,218"/>
+<area shape="rect" id="node10" title=" " alt="" coords="833,177,1040,218"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1064,169,1220,225"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1245,177,1418,218"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1442,177,1658,218"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1683,184,1873,211"/>
+</map>
diff --git a/doc/html/panda__decorator_8h__incl.md5 b/doc/html/panda__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..28a7c333c1eaf2b5fe999d5f46f4931787b4b4e1
--- /dev/null
+++ b/doc/html/panda__decorator_8h__incl.md5
@@ -0,0 +1 @@
+143b963da540fc44d068aacb896a6964
\ No newline at end of file
diff --git a/doc/html/panda__decorator_8h__incl.png b/doc/html/panda__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..78bd799d3debb94a1a84b27dca1e3d1387d91de2
Binary files /dev/null and b/doc/html/panda__decorator_8h__incl.png differ
diff --git a/doc/html/panda__decorator_8h_source.html b/doc/html/panda__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb292b13464d07fe06880fd961dc8bd28aa05f4b
--- /dev/null
+++ b/doc/html/panda__decorator_8h_source.html
@@ -0,0 +1,64 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panda_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li><li class="navelem"><a class="el" href="dir_f12c5f90dd7935e249eb6e93c5a0b8ce.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panda_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="panda__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef PANDA_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define PANDA_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__robot__decorator_8h.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classPanda__decorator.html">    9</a></span>&#160;<span class="keyword">class </span><a class="code" href="classPanda__decorator.html">Panda_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a>{</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator</a>(std::unique_ptr&lt;Abstract_robot&gt; <a class="code" href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">next</a>);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">spezifie_root_bounds</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">spezifie_robot_groups</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;};</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassPanda__decorator_html_aa06d746a0cb43e4f30780289f606e5cb"><div class="ttname"><a href="classPanda__decorator.html#aa06d746a0cb43e4f30780289f606e5cb">Panda_decorator::Panda_decorator</a></div><div class="ttdeci">Panda_decorator(std::unique_ptr&lt; Abstract_robot &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00004">panda_decorator.cpp:4</a></div></div>
+<div class="ttc" id="aclassPanda__decorator_html_ac84d81aaf6ba3bf7c251886ad73c48e6"><div class="ttname"><a href="classPanda__decorator.html#ac84d81aaf6ba3bf7c251886ad73c48e6">Panda_decorator::spezifie_robot_groups</a></div><div class="ttdeci">void spezifie_robot_groups() override</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00023">panda_decorator.cpp:23</a></div></div>
+<div class="ttc" id="aclassPanda__decorator_html"><div class="ttname"><a href="classPanda__decorator.html">Panda_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8h_source.html#l00009">panda_decorator.h:9</a></div></div>
+<div class="ttc" id="aabstract__robot__decorator_8h_html"><div class="ttname"><a href="abstract__robot__decorator_8h.html">abstract_robot_decorator.h</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassPanda__decorator_html_a09b74248a99c3ce02dc909a3871bb876"><div class="ttname"><a href="classPanda__decorator.html#a09b74248a99c3ce02dc909a3871bb876">Panda_decorator::spezifie_root_bounds</a></div><div class="ttdeci">void spezifie_root_bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="panda__decorator_8cpp_source.html#l00014">panda_decorator.cpp:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html"><div class="ttname"><a href="classAbstract__robot__decorator.html">Abstract_robot_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00018">abstract_robot_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__decorator_html_aea8ffc58bc7a4187d8d28440e4395174"><div class="ttname"><a href="classAbstract__robot__decorator.html#aea8ffc58bc7a4187d8d28440e4395174">Abstract_robot_decorator::next</a></div><div class="ttdeci">Abstract_robot * next()</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot__decorator_8h_source.html#l00045">abstract_robot_decorator.h:45</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panel_8cpp.html b/doc/html/panel_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..c5de028927d80d80327e64e6713f91a5312e499f
--- /dev/null
+++ b/doc/html/panel_8cpp.html
@@ -0,0 +1,52 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panel.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panel.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="panel_8h_source.html">robot_element/observers/panel.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for panel.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="panel_8cpp__incl.png" border="0" usemap="#panel_8cpp" alt=""/></div>
+<map name="panel_8cpp" id="panel_8cpp">
+<area shape="rect" title=" " alt="" coords="65,5,150,32"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="15,80,200,121"/>
+<area shape="rect" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,169,257,211"/>
+<area shape="rect" title=" " alt="" coords="108,259,307,285"/>
+</map>
+</div>
+</div>
+<p><a href="panel_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panel_8cpp__incl.map b/doc/html/panel_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..16e415b022ad4e637bf411cbdf45b403ca735947
--- /dev/null
+++ b/doc/html/panel_8cpp__incl.map
@@ -0,0 +1,7 @@
+<map id="panel.cpp" name="panel.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="65,5,150,32"/>
+<area shape="rect" id="node2" href="$panel_8h.html" title=" " alt="" coords="15,80,200,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" id="node4" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,169,257,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="108,259,307,285"/>
+</map>
diff --git a/doc/html/panel_8cpp__incl.md5 b/doc/html/panel_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..f1fbe04ac2f36e828bf28fb2b675a652d3ee7a2b
--- /dev/null
+++ b/doc/html/panel_8cpp__incl.md5
@@ -0,0 +1 @@
+64b8d58c22a55af2b9686d419f21bc2a
\ No newline at end of file
diff --git a/doc/html/panel_8cpp__incl.png b/doc/html/panel_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..bf0158b977b573f30f41595983c3659259aa4faf
Binary files /dev/null and b/doc/html/panel_8cpp__incl.png differ
diff --git a/doc/html/panel_8cpp_source.html b/doc/html/panel_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e9a6125142501cfb4d74c68c108c5bc0123a26d
--- /dev/null
+++ b/doc/html/panel_8cpp_source.html
@@ -0,0 +1,52 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panel.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panel.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="panel_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panel_8h.html">robot_element/observers/panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">    3</a></span>&#160;<a class="code" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel::Panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size) </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;: <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>(tf, name, size)</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;{ </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX()/2.f, <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY()/2.f,0))); <span class="comment">//++</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX()/2.f, <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY()/-2.f,0))); <span class="comment">//+-</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX()/-2.f, <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY()/-2.f,0))); <span class="comment">//--</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX()/-2.f, <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY()/2.f,0))); <span class="comment">//-+</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__element_html_a4d44edf1d412564ef916f16ee9035116"><div class="ttname"><a href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00014">robot_element/abstract_robot_element.h:14</a></div></div>
+<div class="ttc" id="aclassPanel_html_a2f673224275e5ecb0db4d778f93e0bda"><div class="ttname"><a href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel::Panel</a></div><div class="ttdeci">Panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="panel_8cpp_source.html#l00003">panel.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="apanel_8h_html"><div class="ttname"><a href="panel_8h.html">panel.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panel_8h.html b/doc/html/panel_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ad21dd51c8cd5b41eaca72194dac5ea7acc8a52
--- /dev/null
+++ b/doc/html/panel_8h.html
@@ -0,0 +1,80 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panel.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">panel.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for panel.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="panel_8h__incl.png" border="0" usemap="#panel_8h" alt=""/></div>
+<map name="panel_8h" id="panel_8h">
+<area shape="rect" title=" " alt="" coords="72,5,143,32"/>
+<area shape="rect" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,80,257,121"/>
+<area shape="rect" title=" " alt="" coords="108,169,307,196"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="panel_8h__dep__incl.png" border="0" usemap="#panel_8hdep" alt=""/></div>
+<map name="panel_8hdep" id="panel_8hdep">
+<area shape="rect" title=" " alt="" coords="727,5,798,32"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="512,80,611,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="519,304,691,345"/>
+<area shape="rect" href="moveit__panel_8h.html" title=" " alt="" coords="701,80,824,107"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="91,155,192,181"/>
+<area shape="rect" href="panel_8cpp.html" title=" " alt="" coords="907,80,992,107"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="326,155,479,181"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="166,229,375,256"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="504,155,619,181"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="400,229,568,256"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="159,311,383,338"/>
+<area shape="rect" href="moveit__panel_8cpp.html" title=" " alt="" coords="693,155,832,181"/>
+<area shape="rect" href="rviz__panel_8cpp.html" title=" " alt="" coords="26,229,142,256"/>
+</map>
+</div>
+</div>
+<p><a href="panel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPanel.html">Panel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/panel_8h__dep__incl.map b/doc/html/panel_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6c270e1a398821ca9d5e292429525065c74772d3
--- /dev/null
+++ b/doc/html/panel_8h__dep__incl.map
@@ -0,0 +1,15 @@
+<map id="panel.h" name="panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="727,5,798,32"/>
+<area shape="rect" id="node2" href="$ceti__robot_8h.html" title=" " alt="" coords="512,80,611,107"/>
+<area shape="rect" id="node6" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="519,304,691,345"/>
+<area shape="rect" id="node9" href="$moveit__panel_8h.html" title=" " alt="" coords="701,80,824,107"/>
+<area shape="rect" id="node11" href="$rviz__panel_8h.html" title=" " alt="" coords="91,155,192,181"/>
+<area shape="rect" id="node13" href="$panel_8cpp.html" title=" " alt="" coords="907,80,992,107"/>
+<area shape="rect" id="node3" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="326,155,479,181"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="166,229,375,256"/>
+<area shape="rect" id="node8" href="$ceti__robot_8cpp.html" title=" " alt="" coords="504,155,619,181"/>
+<area shape="rect" id="node7" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="400,229,568,256"/>
+<area shape="rect" id="node5" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="159,311,383,338"/>
+<area shape="rect" id="node10" href="$moveit__panel_8cpp.html" title=" " alt="" coords="693,155,832,181"/>
+<area shape="rect" id="node12" href="$rviz__panel_8cpp.html" title=" " alt="" coords="26,229,142,256"/>
+</map>
diff --git a/doc/html/panel_8h__dep__incl.md5 b/doc/html/panel_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..da9a1fd91c7773933c4fc8aa2bf26802a7240165
--- /dev/null
+++ b/doc/html/panel_8h__dep__incl.md5
@@ -0,0 +1 @@
+332a1bd57e5f393fb773e1f55decfd37
\ No newline at end of file
diff --git a/doc/html/panel_8h__dep__incl.png b/doc/html/panel_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..841a0e11138ff218fc1c09c974a58ed2fa8f190e
Binary files /dev/null and b/doc/html/panel_8h__dep__incl.png differ
diff --git a/doc/html/panel_8h__incl.map b/doc/html/panel_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..dd33ff2ec4852cb2f5d989e2102128f78bb6faa1
--- /dev/null
+++ b/doc/html/panel_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="panel.h" name="panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="72,5,143,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" id="node3" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,80,257,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,169,307,196"/>
+</map>
diff --git a/doc/html/panel_8h__incl.md5 b/doc/html/panel_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..9812808076cfbc154564e77d608f5e37c59f0db9
--- /dev/null
+++ b/doc/html/panel_8h__incl.md5
@@ -0,0 +1 @@
+2592f1d8dda4ab32fea2ed056e1f7a61
\ No newline at end of file
diff --git a/doc/html/panel_8h__incl.png b/doc/html/panel_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..7a34692c8d3417b7220d2c7a83d565c182806893
Binary files /dev/null and b/doc/html/panel_8h__incl.png differ
diff --git a/doc/html/panel_8h_source.html b/doc/html/panel_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b81737bd2ca7cf0e709b88e1b762ccd0268c7a52
--- /dev/null
+++ b/doc/html/panel_8h_source.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: panel.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">panel.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="panel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef PANEL_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define PANEL_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno"><a class="line" href="classPanel.html">    7</a></span>&#160;<span class="keyword">class </span><a class="code" href="classPanel.html">Panel</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <a class="code" href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel</a>(std::string <a class="code" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="code" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        </div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">   11</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">set_name</a>(std::string str) {<a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a> = str;}</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">   12</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">set_set</a>(tf2::Vector3&amp; vec) {<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a> = vec;}</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">   14</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{this-&gt;<a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf);}</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classPanel.html#af4477404926c93431f4c369d36e945d6">   16</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classPanel.html#af4477404926c93431f4c369d36e945d6">bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>;}</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">   17</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">world_tf</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>;};</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">   18</a></span>&#160;    std::string&amp; <a class="code" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">   19</a></span>&#160;    tf2::Vector3&amp; <a class="code" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>;}</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;};</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassPanel_html_af865f7bb6545e057fcb0a76fd774a497"><div class="ttname"><a href="classPanel.html#af865f7bb6545e057fcb0a76fd774a497">Panel::set_set</a></div><div class="ttdeci">void set_set(tf2::Vector3 &amp;vec)</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00012">panel.h:12</a></div></div>
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a4d44edf1d412564ef916f16ee9035116"><div class="ttname"><a href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00014">robot_element/abstract_robot_element.h:14</a></div></div>
+<div class="ttc" id="aclassPanel_html_abc3a14b055ba9004fa5ebdb34cd5e583"><div class="ttname"><a href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00018">panel.h:18</a></div></div>
+<div class="ttc" id="aclassPanel_html_a2f673224275e5ecb0db4d778f93e0bda"><div class="ttname"><a href="classPanel.html#a2f673224275e5ecb0db4d778f93e0bda">Panel::Panel</a></div><div class="ttdeci">Panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="panel_8cpp_source.html#l00003">panel.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassPanel_html_a2a70a607d1521d4df2360891afd2106f"><div class="ttname"><a href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00014">panel.h:14</a></div></div>
+<div class="ttc" id="aclassPanel_html"><div class="ttname"><a href="classPanel.html">Panel</a></div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00007">panel.h:7</a></div></div>
+<div class="ttc" id="aclassPanel_html_aaa3899db59afd593ef4ec2eb343f71b7"><div class="ttname"><a href="classPanel.html#aaa3899db59afd593ef4ec2eb343f71b7">Panel::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00017">panel.h:17</a></div></div>
+<div class="ttc" id="aclassPanel_html_a58081e744b584114f23b80c1f3cee22e"><div class="ttname"><a href="classPanel.html#a58081e744b584114f23b80c1f3cee22e">Panel::set_name</a></div><div class="ttdeci">void set_name(std::string str)</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00011">panel.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00019">impl/abstract_robot_element.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_adcaadf1f399625d67747ce746a0cc928"><div class="ttname"><a href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00009">robot_element/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassPanel_html_af6a63c29e5a5573b369482528c4b4818"><div class="ttname"><a href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00019">panel.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassPanel_html_af4477404926c93431f4c369d36e945d6"><div class="ttname"><a href="classPanel.html#af4477404926c93431f4c369d36e945d6">Panel::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00016">panel.h:16</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_2abstract__robot_8h.html b/doc/html/robot_2abstract__robot_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..611e91c933ba6049bec4da7bade321b1ee68c5c8
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h.html
@@ -0,0 +1,148 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#enum-members">Enumerations</a>  </div>
+  <div class="headertitle">
+<div class="title">robot/abstract_robot.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot/abstract_robot.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot_2abstract__robot_8h__incl.png" border="0" usemap="#abstract__robot_8h" alt=""/></div>
+<map name="abstract__robot_8h" id="abstract__robot_8h">
+<area shape="rect" title=" " alt="" coords="62,5,190,32"/>
+<area shape="rect" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" title=" " alt="" coords="129,169,328,196"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="39,80,213,121"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot_2abstract__robot_8h__dep__incl.png" border="0" usemap="#abstract__robot_8hdep" alt=""/></div>
+<map name="abstract__robot_8hdep" id="abstract__robot_8hdep">
+<area shape="rect" title=" " alt="" coords="877,5,1005,32"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="275,80,400,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="523,304,695,345"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="927,155,1081,181"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="1202,229,1411,256"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1069,80,1168,107"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="775,80,972,107"/>
+<area shape="rect" href="panda__decorator_8h.html" title=" " alt="" coords="671,155,814,181"/>
+<area shape="rect" href="abstract__robot_8cpp.html" title=" " alt="" coords="1397,80,1539,107"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="119,155,355,181"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="13,229,240,256"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="379,155,495,181"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="315,229,445,256"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="5,311,248,338"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="907,229,1075,256"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="1195,311,1419,338"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="1156,155,1271,181"/>
+<area shape="rect" href="panda__decorator_8cpp.html" title=" " alt="" coords="673,229,831,256"/>
+</map>
+</div>
+</div>
+<p><a href="robot_2abstract__robot_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot.html">Abstract_robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a6772e3f5ff2cf1ed8a24b23c0992dad1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a> { <br />
+&#160;&#160;<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4, 
+<br />
+&#160;&#160;<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1, 
+<a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0, 
+<br />
+&#160;&#160;<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4, 
+<br />
+&#160;&#160;<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1, 
+<a class="el" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0
+<br />
+ }</td></tr>
+<tr class="separator:a6772e3f5ff2cf1ed8a24b23c0992dad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a6772e3f5ff2cf1ed8a24b23c0992dad1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6772e3f5ff2cf1ed8a24b23c0992dad1">&#9670;&nbsp;</a></span>wing_config</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"></a>RML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"></a>RM_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"></a>R_L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"></a>R__&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"></a>_ML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"></a>_M_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"></a>__L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"></a>___&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"></a>RML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"></a>RM_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"></a>R_L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"></a>R__&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"></a>_ML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"></a>_M_&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"></a>__L&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"></a>___&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="robot_2abstract__robot_8h_source.html#l00009">9</a> of file <a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_2abstract__robot_8h__dep__incl.map b/doc/html/robot_2abstract__robot_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..028d6824374fb6292ad7d435f6b82796078eee52
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h__dep__incl.map
@@ -0,0 +1,20 @@
+<map id="abstract_robot.h" name="abstract_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="877,5,1005,32"/>
+<area shape="rect" id="node2" href="$abstract__base_8h.html" title=" " alt="" coords="275,80,400,107"/>
+<area shape="rect" id="node6" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="523,304,695,345"/>
+<area shape="rect" id="node9" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="927,155,1081,181"/>
+<area shape="rect" id="node10" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="1202,229,1411,256"/>
+<area shape="rect" id="node13" href="$ceti__robot_8h.html" title=" " alt="" coords="1069,80,1168,107"/>
+<area shape="rect" id="node15" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="775,80,972,107"/>
+<area shape="rect" id="node16" href="$panda__decorator_8h.html" title=" " alt="" coords="671,155,814,181"/>
+<area shape="rect" id="node18" href="$abstract__robot_8cpp.html" title=" " alt="" coords="1397,80,1539,107"/>
+<area shape="rect" id="node3" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="119,155,355,181"/>
+<area shape="rect" id="node4" href="$simple__base__implementation_8h.html" title=" " alt="" coords="13,229,240,256"/>
+<area shape="rect" id="node8" href="$simple__base_8h.html" title=" " alt="" coords="379,155,495,181"/>
+<area shape="rect" id="node7" href="$simple__base_8cpp.html" title=" " alt="" coords="315,229,445,256"/>
+<area shape="rect" id="node5" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="5,311,248,338"/>
+<area shape="rect" id="node12" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="907,229,1075,256"/>
+<area shape="rect" id="node11" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="1195,311,1419,338"/>
+<area shape="rect" id="node14" href="$ceti__robot_8cpp.html" title=" " alt="" coords="1156,155,1271,181"/>
+<area shape="rect" id="node17" href="$panda__decorator_8cpp.html" title=" " alt="" coords="673,229,831,256"/>
+</map>
diff --git a/doc/html/robot_2abstract__robot_8h__dep__incl.md5 b/doc/html/robot_2abstract__robot_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..dab7ca9c0af7e2bdb76746b6508780cab4b860ec
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h__dep__incl.md5
@@ -0,0 +1 @@
+d884c8ae7b1428e9873ab900a0c88c0a
\ No newline at end of file
diff --git a/doc/html/robot_2abstract__robot_8h__dep__incl.png b/doc/html/robot_2abstract__robot_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..109e4f5c00e36db613be286cc608ee7b947528fb
Binary files /dev/null and b/doc/html/robot_2abstract__robot_8h__dep__incl.png differ
diff --git a/doc/html/robot_2abstract__robot_8h__incl.map b/doc/html/robot_2abstract__robot_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..511ab19575cc6c1b2139ac584de1c0ac2971e682
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="abstract_robot.h" name="abstract_robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="62,5,190,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" id="node3" title=" " alt="" coords="129,169,328,196"/>
+<area shape="rect" id="node4" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="39,80,213,121"/>
+</map>
diff --git a/doc/html/robot_2abstract__robot_8h__incl.md5 b/doc/html/robot_2abstract__robot_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a66f61c4d98d514f7ea33b7d4d7fa34490bd6cba
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h__incl.md5
@@ -0,0 +1 @@
+0bf945c410d425db7e2d5dddb5ded200
\ No newline at end of file
diff --git a/doc/html/robot_2abstract__robot_8h__incl.png b/doc/html/robot_2abstract__robot_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e15956252aa1f56567a6a5cee706d5665480ff0e
Binary files /dev/null and b/doc/html/robot_2abstract__robot_8h__incl.png differ
diff --git a/doc/html/robot_2abstract__robot_8h_source.html b/doc/html/robot_2abstract__robot_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6866663bc5138072bdaec4bb8dd39ec0b03c9b29
--- /dev/null
+++ b/doc/html/robot_2abstract__robot_8h_source.html
@@ -0,0 +1,122 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_a96b128c7c6c6ac354ec7533337bc019.html">robot</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot/abstract_robot.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot_2abstract__robot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">    9</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a>{</div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">   10</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a> = 7,</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">   11</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a> = 6,</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">   12</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a> = 5,</div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">   13</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a> = 4,</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">   14</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a> = 3,</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">   15</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a> = 2,</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">   16</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a> = 1,</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">   17</a></span>&#160;    <a class="code" href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a> = 0</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;};</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot.html">Abstract_robot</a> {</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    std::string <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    tf2::Vector3 <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a>; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a>; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <a class="code" href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot</a>(std::string <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keyword">virtual</span> std::string&amp; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>()=0; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <span class="keyword">virtual</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>()=0; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">virtual</span> tf2::Vector3&amp; <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>()=0; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keyword">virtual</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">root_tf</a>()=0; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keyword">virtual</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">bounds</a>()=0; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">virtual</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">robot_root_bounds</a>()=0; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">   39</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">size</a>(tf2::Vector3&amp; s) { <a class="code" href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">size_</a> = s;}</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">   40</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">set_tf</a>(tf2::Transform&amp; t) { <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> = t;}</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">   41</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">rotate</a>(<span class="keywordtype">float</span> deg) {tf2::Quaternion rot; rot.setRPY(0,0,deg); tf2::Transform t(rot, tf2::Vector3(0,0,0)); <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>= <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>* t;}</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">   42</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">translate</a>(tf2::Vector3 t) {tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(tf2::Quaternion(0,0,0,1), t); <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>*=<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>;}</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">notify</a>()= 0;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; b)= 0;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj) =0;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">area_calculation</a>(tf2::Transform&amp; A, tf2::Transform&amp; B, tf2::Transform&amp; C);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;};</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a537d7ca2b28b678b16a626e291fbc086">R_L</a></div><div class="ttdeci">@ R_L</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00012">robot/abstract_robot.h:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_acfcaa13dd3824464426f0557ec2e360d"><div class="ttname"><a href="classAbstract__robot.html#acfcaa13dd3824464426f0557ec2e360d">Abstract_robot::notify</a></div><div class="ttdeci">virtual void notify()=0</div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1afd54201e477840d823ca1036429ecb8c">_ML</a></div><div class="ttdeci">@ _ML</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00014">robot/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a72694508ca6d5ada16236775402dd385"><div class="ttname"><a href="classAbstract__robot.html#a72694508ca6d5ada16236775402dd385">Abstract_robot::rotate</a></div><div class="ttdeci">void rotate(float deg)</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00041">robot/abstract_robot.h:41</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a019221cda1650589b0fbe492a53628d5">___</a></div><div class="ttdeci">@ ___</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00017">robot/abstract_robot.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aeb08dc2fa1ecdad08544fb77ff60d78e"><div class="ttname"><a href="classAbstract__robot.html#aeb08dc2fa1ecdad08544fb77ff60d78e">Abstract_robot::check_single_object_collision</a></div><div class="ttdeci">virtual bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;b)=0</div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af29a9894b43fc8124de65712414168f4"><div class="ttname"><a href="classAbstract__robot.html#af29a9894b43fc8124de65712414168f4">Abstract_robot::root_tf</a></div><div class="ttdeci">tf2::Transform &amp; root_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00060">impl/abstract_robot.h:60</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1ac855ec519bd6bd670ddac0323c49dd52">__L</a></div><div class="ttdeci">@ __L</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00016">robot/abstract_robot.h:16</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a1402d06f3393679d585376716cc2a534"><div class="ttname"><a href="classAbstract__robot.html#a1402d06f3393679d585376716cc2a534">Abstract_robot::area_calculation</a></div><div class="ttdeci">float area_calculation(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</div><div class="ttdoc">Triangle area calculator.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__robot_8cpp_source.html#l00022">abstract_robot.cpp:22</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_abd68b299ae1d193e2c4d5ce89a7a2c61"><div class="ttname"><a href="classAbstract__robot.html#abd68b299ae1d193e2c4d5ce89a7a2c61">Abstract_robot::size</a></div><div class="ttdeci">void size(tf2::Vector3 &amp;s)</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00039">robot/abstract_robot.h:39</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ade9a130588307d054c1d68e861a01717"><div class="ttname"><a href="classAbstract__robot.html#ade9a130588307d054c1d68e861a01717">Abstract_robot::workload_checker</a></div><div class="ttdeci">virtual void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj)=0</div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ab27017c6039446502704b443df934a2d"><div class="ttname"><a href="classAbstract__robot.html#ab27017c6039446502704b443df934a2d">Abstract_robot::set_tf</a></div><div class="ttdeci">void set_tf(tf2::Transform &amp;t)</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00040">robot/abstract_robot.h:40</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a126e52a7696cf030f5697dd93439775f"><div class="ttname"><a href="classAbstract__robot.html#a126e52a7696cf030f5697dd93439775f">Abstract_robot::translate</a></div><div class="ttdeci">void translate(tf2::Vector3 t)</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00042">robot/abstract_robot.h:42</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1a069e32a8a187a7a00ded0606dbf4e342">_M_</a></div><div class="ttdeci">@ _M_</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00015">robot/abstract_robot.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a854a3c8c740dcb60e0ee347fcd5447f6"><div class="ttname"><a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot::tf_</a></div><div class="ttdeci">tf2::Transform tf_</div><div class="ttdoc">Pose of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00029">impl/abstract_robot.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1aecd32f0a7d1bb5c30c5a5e6b2217a265">RM_</a></div><div class="ttdeci">@ RM_</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00011">robot/abstract_robot.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a704bd9522c6fdaff61cc7584ef20850c"><div class="ttname"><a href="classAbstract__robot.html#a704bd9522c6fdaff61cc7584ef20850c">Abstract_robot::Abstract_robot</a></div><div class="ttdeci">Abstract_robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00038">impl/abstract_robot.h:38</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af8904b397a26e115a98f7278a5ba5458">RML</a></div><div class="ttdeci">@ RML</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00010">robot/abstract_robot.h:10</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><div class="ttname"><a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">Name of robot.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00027">impl/abstract_robot.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_af92f5538f28fbe61687d70f15e84fb82"><div class="ttname"><a href="classAbstract__robot.html#af92f5538f28fbe61687d70f15e84fb82">Abstract_robot::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdoc">Size of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00028">impl/abstract_robot.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a64ae098f7cadad8237e663658f038663"><div class="ttname"><a href="classAbstract__robot.html#a64ae098f7cadad8237e663658f038663">Abstract_robot::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00061">impl/abstract_robot.h:61</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aef7449039e62cf8608dbd22222120289"><div class="ttname"><a href="classAbstract__robot.html#aef7449039e62cf8608dbd22222120289">Abstract_robot::robot_root_bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; robot_root_bounds()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00064">impl/abstract_robot.h:64</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7"><div class="ttname"><a href="robot_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1af7b4b527e41688f2ede58378039f20a7">R__</a></div><div class="ttdeci">@ R__</div><div class="ttdef"><b>Definition:</b> <a href="robot_2abstract__robot_8h_source.html#l00013">robot/abstract_robot.h:13</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></div><div class="ttdeci">wing_config</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00014">impl/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_8cpp.html b/doc/html/robot_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..1155454c030d6270fd914c97337ed3b861b0aec4
--- /dev/null
+++ b/doc/html/robot_8cpp.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="robot_8h_source.html">impl/robot.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot_8cpp__incl.png" border="0" usemap="#robot_8cpp" alt=""/></div>
+<map name="robot_8cpp" id="robot_8cpp">
+<area shape="rect" title=" " alt="" coords="1857,5,1940,32"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="1848,80,1949,107"/>
+<area shape="rect" title=" " alt="" coords="1463,445,1542,471"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1021,169,1182,196"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1277,348,1427,389"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1274,259,1438,300"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1804,266,1903,293"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1607,169,1806,196"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1463,266,1559,293"/>
+<area shape="rect" title=" " alt="" coords="1936,155,2128,211"/>
+<area shape="rect" title=" " alt="" coords="2152,162,2371,203"/>
+<area shape="rect" title=" " alt="" coords="2395,162,2602,203"/>
+<area shape="rect" title=" " alt="" coords="2626,155,2782,211"/>
+<area shape="rect" title=" " alt="" coords="2807,162,2980,203"/>
+<area shape="rect" title=" " alt="" coords="3004,162,3220,203"/>
+<area shape="rect" title=" " alt="" coords="1069,445,1267,471"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="868,266,1047,293"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="759,355,963,382"/>
+<area shape="rect" title=" " alt="" coords="5,445,155,471"/>
+<area shape="rect" title=" " alt="" coords="179,445,331,471"/>
+<area shape="rect" title=" " alt="" coords="355,445,487,471"/>
+<area shape="rect" title=" " alt="" coords="511,445,654,471"/>
+<area shape="rect" title=" " alt="" coords="678,445,791,471"/>
+<area shape="rect" title=" " alt="" coords="815,445,947,471"/>
+<area shape="rect" title=" " alt="" coords="971,445,1045,471"/>
+<area shape="rect" title=" " alt="" coords="1292,437,1439,479"/>
+<area shape="rect" title=" " alt="" coords="1633,259,1780,300"/>
+</map>
+</div>
+</div>
+<p><a href="robot_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_8cpp__incl.map b/doc/html/robot_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..cd47501db245eb8f81135a0fd2cca2d9fae8477c
--- /dev/null
+++ b/doc/html/robot_8cpp__incl.map
@@ -0,0 +1,29 @@
+<map id="robot.cpp" name="robot.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="1857,5,1940,32"/>
+<area shape="rect" id="node2" href="$robot_8h.html" title=" " alt="" coords="1848,80,1949,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1463,445,1542,471"/>
+<area shape="rect" id="node4" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1021,169,1182,196"/>
+<area shape="rect" id="node15" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1277,348,1427,389"/>
+<area shape="rect" id="node17" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1274,259,1438,300"/>
+<area shape="rect" id="node18" href="$wing_8h.html" title=" " alt="" coords="1804,266,1903,293"/>
+<area shape="rect" id="node19" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1607,169,1806,196"/>
+<area shape="rect" id="node21" href="$impl_2field_8h.html" title=" " alt="" coords="1463,266,1559,293"/>
+<area shape="rect" id="node22" title=" " alt="" coords="1936,155,2128,211"/>
+<area shape="rect" id="node23" title=" " alt="" coords="2152,162,2371,203"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2395,162,2602,203"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2626,155,2782,211"/>
+<area shape="rect" id="node26" title=" " alt="" coords="2807,162,2980,203"/>
+<area shape="rect" id="node27" title=" " alt="" coords="3004,162,3220,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="1069,445,1267,471"/>
+<area shape="rect" id="node6" href="$abstract__strategy_8h.html" title=" " alt="" coords="868,266,1047,293"/>
+<area shape="rect" id="node7" href="$abstract__map__loader_8h.html" title=" " alt="" coords="759,355,963,382"/>
+<area shape="rect" id="node8" title=" " alt="" coords="5,445,155,471"/>
+<area shape="rect" id="node9" title=" " alt="" coords="179,445,331,471"/>
+<area shape="rect" id="node10" title=" " alt="" coords="355,445,487,471"/>
+<area shape="rect" id="node11" title=" " alt="" coords="511,445,654,471"/>
+<area shape="rect" id="node12" title=" " alt="" coords="678,445,791,471"/>
+<area shape="rect" id="node13" title=" " alt="" coords="815,445,947,471"/>
+<area shape="rect" id="node14" title=" " alt="" coords="971,445,1045,471"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1292,437,1439,479"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1633,259,1780,300"/>
+</map>
diff --git a/doc/html/robot_8cpp__incl.md5 b/doc/html/robot_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b78dfc39587620c5aab5bedfd6a74cf3225e3093
--- /dev/null
+++ b/doc/html/robot_8cpp__incl.md5
@@ -0,0 +1 @@
+cf86e26ea7ab506d731c7cf7220d6b5e
\ No newline at end of file
diff --git a/doc/html/robot_8cpp__incl.png b/doc/html/robot_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..c1e762ce745df3adfa1c08522774e880374d7073
Binary files /dev/null and b/doc/html/robot_8cpp__incl.png differ
diff --git a/doc/html/robot_8cpp_source.html b/doc/html/robot_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b7e12714998fe329c147d5600a1977273bec3b6
--- /dev/null
+++ b/doc/html/robot_8cpp_source.html
@@ -0,0 +1,283 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_8h.html">impl/robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">Robot::generate_access_fields</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= 2; i++){</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt;= 2; j++){</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;            <span class="keywordflow">if</span>(i == 0 &amp;&amp; j == 0) {<span class="keywordflow">continue</span>;}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;            <span class="keywordflow">if</span>(i == 2 &amp;&amp; j == 2) {<span class="keywordflow">continue</span>;}</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;            <span class="keywordflow">if</span>(i == 0) {</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;                <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0.8f*j,0))));</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;                <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-0.8f*j,0))));</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j == 0){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;                <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.8f*i,0,0))));</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;                <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.8f*i,0,0))));</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.8f*i,0.8f*j,0))));</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.8f*i,0.8f*j,0))));</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;            <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.8f*i,-0.8f*j,0))));</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;            <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.8f*i,-0.8f*j,0))));</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            }</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        };</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    };</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(1.305f,0,0))));</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-1.305f,0,0))));</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,1.305f,0))));</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.push_back(<span class="keyword">new</span> <a class="code" href="classField.html">Field</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-1.305f,0)))); </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;}</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">   31</a></span>&#160;<span class="keywordtype">float</span> <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">Robot::area_calculation</a>(tf2::Transform&amp; A, tf2::Transform&amp; B, tf2::Transform&amp; C){</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keywordflow">return</span> std::abs(</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;                    (B.getOrigin().getX() * A.getOrigin().getY()) - (A.getOrigin().getX() * B.getOrigin().getY()) +</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;                    (C.getOrigin().getX() * B.getOrigin().getY()) - (B.getOrigin().getX() * C.getOrigin().getY()) +</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;                    (A.getOrigin().getX() * C.getOrigin().getY()) - (C.getOrigin().getX() * A.getOrigin().getY()))*0.5f;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;}</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">   38</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot::workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj){</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.size(); i++){</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a> *deco = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>*<span class="keyword">&gt;</span>(<a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>[i]);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <a class="code" href="classWing.html">Wing</a>* ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(deco-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        tf2::Transform A = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[0];</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        tf2::Transform B = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[1];</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        tf2::Transform C = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[2];</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        tf2::Transform D = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[3];</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;            </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keywordtype">float</span> full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <span class="keywordtype">float</span> sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,obj,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,obj,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,obj,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) { </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;            count_vector[i]++; <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    }</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    </div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,obj,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,obj,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,obj,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) count_vector.back()++; <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;}</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">   70</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot::check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; str){</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[0];</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[1];</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[2];</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">root_tf_</a> * <a class="code" href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">robot_root_bounds_</a>[3];</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,obj,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,obj,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,obj,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) {<span class="keywordflow">return</span> <span class="keyword">false</span>; } </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;base_&quot;</span> &lt;&lt; <a class="code" href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">name_</a>.back();</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,obj,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,obj,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,obj,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area){</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        str = ss.str();</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.empty()){</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        std::vector&lt;Abstract_robot_element*&gt;::const_iterator it = <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.begin();            </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="keywordflow">while</span> (it != <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.end()) {</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;            <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a> *deco = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>*<span class="keyword">&gt;</span>(*it);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;            <a class="code" href="classWing.html">Wing</a>* ceti = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(deco-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;            tf2::Transform A = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[0];</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;            tf2::Transform B = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[1];</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;            tf2::Transform C = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[2];</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;            tf2::Transform D = ceti-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * ceti-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[3];</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;            </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;            full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;            sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,obj,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,obj,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,obj,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(obj, B, A);</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;            <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                str = ceti-&gt;<a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>();</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;            } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                ++it;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;            }</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        }</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    }</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;}</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classRobot.html#af626880915da239eeb0793eb41ab7596">  118</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot::reset</a>(){</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.clear();</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.clear();</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <a class="code" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a>();</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> = tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>().getOrigin().getZ()));</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;}</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">  125</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot::notify</a>(){ </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keywordflow">for</span>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* wing : <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>) wing-&gt;update(<a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>); </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="keywordflow">for</span>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* field : <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>) field-&gt;update(<a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a>);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;}</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">  130</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot::check_robot_collision</a>( <a class="code" href="classRobot.html">Robot</a>* rob){</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    tf2::Transform A = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[0];</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    tf2::Transform B = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[1];</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    tf2::Transform C = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[2];</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    tf2::Transform D = <a class="code" href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">tf_</a> * <a class="code" href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">bounds_</a>[3];</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="keywordtype">float</span> full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,B,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,D,C);</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="keywordtype">float</span> sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,rob-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(),D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,rob-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(),C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,rob-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(),B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(rob-&gt;<a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>(), B, A);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    <span class="keywordflow">for</span>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : rob-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()) {</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(wrd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        tf2::Transform WA = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[0];</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        tf2::Transform WB = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[1];</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        tf2::Transform WC = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[2];</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        tf2::Transform WD = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[3];</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,WA,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,WA,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,WA,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,WB,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,WB,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,WB,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WB, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,WC,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,WC,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,WC,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(A,WD,D) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(D,WD,C) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(C,WD,B) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD, B, A); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    }</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keywordflow">for</span> (<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* ar : <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>){</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(ar);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(wrd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        tf2::Transform WA = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[0];</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        tf2::Transform WB = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[1];</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        tf2::Transform WC = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[2];</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        tf2::Transform WD = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[3];</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        full_area = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WB,WC) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WD,WC);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keywordflow">for</span>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* are : rob-&gt;<a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>()) {</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;            <a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>* wrd = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>*<span class="keyword">&gt;</span>(are);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;            <a class="code" href="classWing.html">Wing</a>* w = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span>(wrd-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>());</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160; </div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;            tf2::Transform WA2 = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[0];</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;            tf2::Transform WB2 = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[1];</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;            tf2::Transform WC2 = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[2];</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;            tf2::Transform WD2 = w-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>() * w-&gt;<a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>()[3];</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;            sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WA2,WD) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD,WA2,WC) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC,WA2,WB) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;            sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WB2,WD) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD,WB2,WC) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC,WB2,WB) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WB2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;            sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WC2,WD) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD,WC2,WC) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC,WC2,WB) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;            sum = <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WA,WD2,WD) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD,WD2,WC) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WC,WD2,WB) + <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(WD2, WB, WA); <span class="keywordflow">if</span> ((std::floor(sum*100)/100.f) &lt;= full_area) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        }</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    }</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;}</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160; </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160; </div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
+<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">  182</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot::register_observers</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* wd){</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>* decorator = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>*<span class="keyword">&gt;</span>(wd);</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>.push_back(wd);</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    std::vector&lt;tf2::Transform&gt; plane;</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordtype">bool</span> found = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    <span class="keywordtype">int</span> index = 0;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160; </div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    <span class="keywordflow">if</span> (decorator-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>().getOrigin().getY()&gt;0){</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.size(); i++){</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;            <span class="keywordflow">if</span> ((<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>[i]-&gt;relative_tf().getOrigin().getY() &gt; 0) &amp;&amp; (<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>[i]-&gt;relative_tf().getOrigin().getX() == 0)){</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                found = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                index = i;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;            }</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        }</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <span class="keywordflow">if</span>(found) {<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.erase(<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.begin() + index); <span class="keywordflow">return</span>;}</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (decorator-&gt;<a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>()-&gt;<a class="code" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>().getOrigin().getY()&lt;0) {</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.size(); i++){</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;            <span class="keywordflow">if</span> ((<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>[i]-&gt;relative_tf().getOrigin().getY() &lt; 0) &amp;&amp; (<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>[i]-&gt;relative_tf().getOrigin().getX() == 0)){</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                found = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                index = i;</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;            }</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        }</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        <span class="keywordflow">if</span>(found) {<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.erase(<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.begin() + index); <span class="keywordflow">return</span>;}</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.size(); i++){</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;            <span class="keywordflow">if</span> (<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>[i]-&gt;relative_tf().getOrigin().getX() &gt; 0){</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;                found = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;                index = i;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;                <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;            }</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        }</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keywordflow">if</span>(found) {<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.erase(<a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>.begin() + index); <span class="keywordflow">return</span>;}</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    }</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;};</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing_html_ad8bf499109ae520a7dcd19afd564ff7b"><div class="ttname"><a href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">Wing::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00028">wing.h:28</a></div></div>
+<div class="ttc" id="arobot_8h_html"><div class="ttname"><a href="robot_8h.html">robot.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_aeb6c8c47edbcc561f15b00d551a045e6"><div class="ttname"><a href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot::observers</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; observers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00029">robot.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a598a8379918fbdaf44358be840f146b7"><div class="ttname"><a href="classAbstract__robot.html#a598a8379918fbdaf44358be840f146b7">Abstract_robot::root_tf_</a></div><div class="ttdeci">tf2::Transform root_tf_</div><div class="ttdoc">Robot root on table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00030">impl/abstract_robot.h:30</a></div></div>
+<div class="ttc" id="aclassWing_html_a3dc2d8cffc9b50ff0a2333b68ea402cc"><div class="ttname"><a href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00023">wing.h:23</a></div></div>
+<div class="ttc" id="aclassRobot_html_aaeebeca358c747b158be2999664d4b6a"><div class="ttname"><a href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">Robot::access_fields_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; access_fields_</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00022">robot.h:22</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab95c43650b9596fc2e9bc374abeeadf6"><div class="ttname"><a href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00125">robot.cpp:125</a></div></div>
+<div class="ttc" id="aclassRobot_html_af626880915da239eeb0793eb41ab7596"><div class="ttname"><a href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00118">robot.cpp:118</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassRobot_html_a9cec7ea9000ee388e058ba6bfbe7640d"><div class="ttname"><a href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">Robot::generate_access_fields</a></div><div class="ttdeci">void generate_access_fields()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00003">robot.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a28c13c43328a26f12659ff086d77394e"><div class="ttname"><a href="classAbstract__robot.html#a28c13c43328a26f12659ff086d77394e">Abstract_robot::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdoc">Bounds of table top surface.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00031">impl/abstract_robot.h:31</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html"><div class="ttname"><a href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00009">wing_rviz_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a854a3c8c740dcb60e0ee347fcd5447f6"><div class="ttname"><a href="classAbstract__robot.html#a854a3c8c740dcb60e0ee347fcd5447f6">Abstract_robot::tf_</a></div><div class="ttdeci">tf2::Transform tf_</div><div class="ttdoc">Pose of table.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00029">impl/abstract_robot.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a9138c650f2148d515802a89f079ace2f"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator::wing</a></div><div class="ttdeci">Abstract_robot_element * wing()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">impl/abstract_robot_element_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7e045dcd43e888a9e4cddc2a9e6abdc8"><div class="ttname"><a href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot::workload_checker</a></div><div class="ttdeci">void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00038">robot.cpp:38</a></div></div>
+<div class="ttc" id="aclassRobot_html_a0b60a38b7639a58095b3303052e4a801"><div class="ttname"><a href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">Robot::area_calculation</a></div><div class="ttdeci">float area_calculation(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00031">robot.cpp:31</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a3dc156f9e7813fa5dfa0d9c8c7e7a36f"><div class="ttname"><a href="classAbstract__robot.html#a3dc156f9e7813fa5dfa0d9c8c7e7a36f">Abstract_robot::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdoc">Name of robot.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00027">impl/abstract_robot.h:27</a></div></div>
+<div class="ttc" id="aclassRobot_html_a6821b81b167e8bffbeca4beedc8033f8"><div class="ttname"><a href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">Robot::observers_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; observers_</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00021">robot.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad3ee9aff6d4fb1e4e90775e943e65861"><div class="ttname"><a href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">Abstract_robot_element::relative_tf</a></div><div class="ttdeci">tf2::Transform &amp; relative_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00018">impl/abstract_robot_element.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab7bf74de30a186337b05cb05b74d0e73"><div class="ttname"><a href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot::check_single_object_collision</a></div><div class="ttdeci">bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;str) override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00070">robot.cpp:70</a></div></div>
+<div class="ttc" id="aclassField_html"><div class="ttname"><a href="classField.html">Field</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00007">impl/field.h:7</a></div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7eddff501a2c3a3d5feb6c2ec4b016e0"><div class="ttname"><a href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot::register_observers</a></div><div class="ttdeci">void register_observers(Abstract_robot_element *wd)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00182">robot.cpp:182</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a6d8ed98b1820134733f8d1a42eaa00c4"><div class="ttname"><a href="classAbstract__robot.html#a6d8ed98b1820134733f8d1a42eaa00c4">Abstract_robot::robot_root_bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; robot_root_bounds_</div><div class="ttdoc">Bounds of robot arm as sub-region of table top.</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00032">impl/abstract_robot.h:32</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab57fc902b6e93336db5310abf05c8a92"><div class="ttname"><a href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot::check_robot_collision</a></div><div class="ttdeci">bool check_robot_collision(Robot *R)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00130">robot.cpp:130</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_8h.html b/doc/html/robot_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..67f56f49092831819734dd776687b8c4bde192ba
--- /dev/null
+++ b/doc/html/robot_8h.html
@@ -0,0 +1,114 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">robot.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot_8h_source.html">impl/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__rviz__decorator_8h_source.html">impl/wing_rviz_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2field_8h_source.html">impl/field.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+<code>#include &lt;moveit/kinematic_constraints/utils.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot_8h__incl.png" border="0" usemap="#robot_8h" alt=""/></div>
+<map name="robot_8h" id="robot_8h">
+<area shape="rect" title=" " alt="" coords="1865,5,1933,32"/>
+<area shape="rect" title=" " alt="" coords="1463,370,1542,397"/>
+<area shape="rect" href="impl_2abstract__robot_8h.html" title=" " alt="" coords="1021,95,1182,121"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1277,273,1427,315"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1274,184,1438,225"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="1804,191,1903,218"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="1607,95,1806,121"/>
+<area shape="rect" href="impl_2field_8h.html" title=" " alt="" coords="1463,191,1559,218"/>
+<area shape="rect" title=" " alt="" coords="1936,80,2128,136"/>
+<area shape="rect" title=" " alt="" coords="2152,87,2371,129"/>
+<area shape="rect" title=" " alt="" coords="2395,87,2602,129"/>
+<area shape="rect" title=" " alt="" coords="2626,80,2782,136"/>
+<area shape="rect" title=" " alt="" coords="2807,87,2980,129"/>
+<area shape="rect" title=" " alt="" coords="3004,87,3220,129"/>
+<area shape="rect" title=" " alt="" coords="1069,370,1267,397"/>
+<area shape="rect" href="abstract__strategy_8h.html" title=" " alt="" coords="868,191,1047,218"/>
+<area shape="rect" href="abstract__map__loader_8h.html" title=" " alt="" coords="759,281,963,307"/>
+<area shape="rect" title=" " alt="" coords="5,370,155,397"/>
+<area shape="rect" title=" " alt="" coords="179,370,331,397"/>
+<area shape="rect" title=" " alt="" coords="355,370,487,397"/>
+<area shape="rect" title=" " alt="" coords="511,370,654,397"/>
+<area shape="rect" title=" " alt="" coords="678,370,791,397"/>
+<area shape="rect" title=" " alt="" coords="815,370,947,397"/>
+<area shape="rect" title=" " alt="" coords="971,370,1045,397"/>
+<area shape="rect" title=" " alt="" coords="1292,363,1439,404"/>
+<area shape="rect" title=" " alt="" coords="1633,184,1780,225"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot_8h__dep__incl.png" border="0" usemap="#robot_8hdep" alt=""/></div>
+<map name="robot_8hdep" id="robot_8hdep">
+<area shape="rect" title=" " alt="" coords="450,5,518,32"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="407,80,561,107"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="135,155,228,181"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,229,139,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="328,229,517,256"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="600,155,747,181"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="637,80,758,107"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="783,80,865,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="628,304,796,331"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="829,229,955,256"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="303,155,471,181"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="163,229,271,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="321,304,525,331"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="593,229,754,256"/>
+</map>
+</div>
+</div>
+<p><a href="robot_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot.html">Robot</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot_8h__dep__incl.map b/doc/html/robot_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5b1a4d1a4ff7246a7225c554a7194ee35b59e59d
--- /dev/null
+++ b/doc/html/robot_8h__dep__incl.map
@@ -0,0 +1,16 @@
+<map id="robot.h" name="robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="450,5,518,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="407,80,561,107"/>
+<area shape="rect" id="node3" href="$mediator_8h.html" title=" " alt="" coords="135,155,228,181"/>
+<area shape="rect" id="node4" href="$base__routine_8cpp.html" title=" " alt="" coords="5,229,139,256"/>
+<area shape="rect" id="node6" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="328,229,517,256"/>
+<area shape="rect" id="node9" href="$moveit__mediator_8h.html" title=" " alt="" coords="600,155,747,181"/>
+<area shape="rect" id="node13" href="$moveit__robot_8h.html" title=" " alt="" coords="637,80,758,107"/>
+<area shape="rect" id="node14" href="$robot_8cpp.html" title=" " alt="" coords="783,80,865,107"/>
+<area shape="rect" id="node7" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="628,304,796,331"/>
+<area shape="rect" id="node10" href="$cell__routine_8cpp.html" title=" " alt="" coords="829,229,955,256"/>
+<area shape="rect" id="node12" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="303,155,471,181"/>
+<area shape="rect" id="node5" href="$mediator_8cpp.html" title=" " alt="" coords="163,229,271,256"/>
+<area shape="rect" id="node8" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="321,304,525,331"/>
+<area shape="rect" id="node11" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="593,229,754,256"/>
+</map>
diff --git a/doc/html/robot_8h__dep__incl.md5 b/doc/html/robot_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d44cf1338e7b96110a5c88aa9308a85390cdfba5
--- /dev/null
+++ b/doc/html/robot_8h__dep__incl.md5
@@ -0,0 +1 @@
+56e804b8da7e05b5a417feb2726e91ac
\ No newline at end of file
diff --git a/doc/html/robot_8h__dep__incl.png b/doc/html/robot_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0df5a200a2adc411dbc76576d6ed73d661eed0dc
Binary files /dev/null and b/doc/html/robot_8h__dep__incl.png differ
diff --git a/doc/html/robot_8h__incl.map b/doc/html/robot_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..807cd37038d000f65c22a3528bccfafa84782fd7
--- /dev/null
+++ b/doc/html/robot_8h__incl.map
@@ -0,0 +1,28 @@
+<map id="robot.h" name="robot.h">
+<area shape="rect" id="node1" title=" " alt="" coords="1865,5,1933,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1463,370,1542,397"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot_8h.html" title=" " alt="" coords="1021,95,1182,121"/>
+<area shape="rect" id="node14" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="1277,273,1427,315"/>
+<area shape="rect" id="node16" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1274,184,1438,225"/>
+<area shape="rect" id="node17" href="$wing_8h.html" title=" " alt="" coords="1804,191,1903,218"/>
+<area shape="rect" id="node18" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="1607,95,1806,121"/>
+<area shape="rect" id="node20" href="$impl_2field_8h.html" title=" " alt="" coords="1463,191,1559,218"/>
+<area shape="rect" id="node21" title=" " alt="" coords="1936,80,2128,136"/>
+<area shape="rect" id="node22" title=" " alt="" coords="2152,87,2371,129"/>
+<area shape="rect" id="node23" title=" " alt="" coords="2395,87,2602,129"/>
+<area shape="rect" id="node24" title=" " alt="" coords="2626,80,2782,136"/>
+<area shape="rect" id="node25" title=" " alt="" coords="2807,87,2980,129"/>
+<area shape="rect" id="node26" title=" " alt="" coords="3004,87,3220,129"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1069,370,1267,397"/>
+<area shape="rect" id="node5" href="$abstract__strategy_8h.html" title=" " alt="" coords="868,191,1047,218"/>
+<area shape="rect" id="node6" href="$abstract__map__loader_8h.html" title=" " alt="" coords="759,281,963,307"/>
+<area shape="rect" id="node7" title=" " alt="" coords="5,370,155,397"/>
+<area shape="rect" id="node8" title=" " alt="" coords="179,370,331,397"/>
+<area shape="rect" id="node9" title=" " alt="" coords="355,370,487,397"/>
+<area shape="rect" id="node10" title=" " alt="" coords="511,370,654,397"/>
+<area shape="rect" id="node11" title=" " alt="" coords="678,370,791,397"/>
+<area shape="rect" id="node12" title=" " alt="" coords="815,370,947,397"/>
+<area shape="rect" id="node13" title=" " alt="" coords="971,370,1045,397"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1292,363,1439,404"/>
+<area shape="rect" id="node19" title=" " alt="" coords="1633,184,1780,225"/>
+</map>
diff --git a/doc/html/robot_8h__incl.md5 b/doc/html/robot_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..c86e5c549b8dca5886b66c6c646bc221660fc7c9
--- /dev/null
+++ b/doc/html/robot_8h__incl.md5
@@ -0,0 +1 @@
+456bdaac55555b924d5bc2e6cc09bf50
\ No newline at end of file
diff --git a/doc/html/robot_8h__incl.png b/doc/html/robot_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..740198327e636b4c78c27edaed4e3c295f6067d6
Binary files /dev/null and b/doc/html/robot_8h__incl.png differ
diff --git a/doc/html/robot_8h_source.html b/doc/html/robot_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..42424d0acf5a3bf8fd82a05c717d2d2f7b204a04
--- /dev/null
+++ b/doc/html/robot_8h_source.html
@@ -0,0 +1,116 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ROBOT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ROBOT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot_8h.html">impl/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__rviz__decorator_8h.html">impl/wing_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2field_8h.html">impl/field.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;moveit/robot_model_loader/robot_model_loader.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;moveit/kinematic_constraints/utils.h&gt;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classRobot.html">   19</a></span>&#160;<span class="keyword">class </span><a class="code" href="classRobot.html">Robot</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__robot.html">Abstract_robot</a>{</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">   21</a></span>&#160;    std::vector&lt;Abstract_robot_element*&gt; <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">   22</a></span>&#160;    std::vector&lt;Abstract_robot_element*&gt; <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>;</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">   23</a></span>&#160;    std::vector&lt;moveit_msgs::CollisionObject*&gt; <a class="code" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a>;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">   27</a></span>&#160;    <a class="code" href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot</a>(std::string&amp; <a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, tf2::Transform <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, tf2::Vector3 <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>) : <a class="code" href="classAbstract__robot.html">Abstract_robot</a>(<a class="code" href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">name</a>, <a class="code" href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">tf</a>, <a class="code" href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">size</a>){<a class="code" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a>();}</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">   29</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;Abstract_robot_element*&gt;&amp; <a class="code" href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">observers</a>() { <span class="keywordflow">return</span> <a class="code" href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">observers_</a>;}</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">   30</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;Abstract_robot_element*&gt;&amp; <a class="code" href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">access_fields</a>() { <span class="keywordflow">return</span> <a class="code" href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">access_fields_</a>;}</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classRobot.html#ab333a4150395873d947c791996171510">   32</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRobot.html#ab333a4150395873d947c791996171510">add_coll_markers</a>(moveit_msgs::CollisionObject* marker) {<a class="code" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a>.push_back(marker);}</div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">   33</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;moveit_msgs::CollisionObject*&gt; <a class="code" href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">coll_markers</a>(){ <span class="keywordflow">return</span> <a class="code" href="classRobot.html#a20984a642a92887a622d8e069884b8e8">coll_markers_</a>;}</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">register_observers</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* wd);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot.html#af626880915da239eeb0793eb41ab7596">reset</a>();</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">generate_access_fields</a>();</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <span class="keywordtype">float</span> <a class="code" href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">area_calculation</a>(tf2::Transform&amp; A, tf2::Transform&amp; B, tf2::Transform&amp; C);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">check_robot_collision</a>(<a class="code" href="classRobot.html">Robot</a>* R);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">check_single_object_collision</a>(tf2::Transform&amp; obj, std::string&amp; str) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">workload_checker</a>(std::vector&lt;int&gt;&amp; count_vector, tf2::Transform&amp; obj) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">notify</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;};</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassRobot_html_a20984a642a92887a622d8e069884b8e8"><div class="ttname"><a href="classRobot.html#a20984a642a92887a622d8e069884b8e8">Robot::coll_markers_</a></div><div class="ttdeci">std::vector&lt; moveit_msgs::CollisionObject * &gt; coll_markers_</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00023">robot.h:23</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_aeb6c8c47edbcc561f15b00d551a045e6"><div class="ttname"><a href="classRobot.html#aeb6c8c47edbcc561f15b00d551a045e6">Robot::observers</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; observers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00029">robot.h:29</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab333a4150395873d947c791996171510"><div class="ttname"><a href="classRobot.html#ab333a4150395873d947c791996171510">Robot::add_coll_markers</a></div><div class="ttdeci">void add_coll_markers(moveit_msgs::CollisionObject *marker)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00032">robot.h:32</a></div></div>
+<div class="ttc" id="aclassRobot_html_aaeebeca358c747b158be2999664d4b6a"><div class="ttname"><a href="classRobot.html#aaeebeca358c747b158be2999664d4b6a">Robot::access_fields_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; access_fields_</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00022">robot.h:22</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab95c43650b9596fc2e9bc374abeeadf6"><div class="ttname"><a href="classRobot.html#ab95c43650b9596fc2e9bc374abeeadf6">Robot::notify</a></div><div class="ttdeci">void notify() override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00125">robot.cpp:125</a></div></div>
+<div class="ttc" id="aimpl_2field_8h_html"><div class="ttname"><a href="impl_2field_8h.html">field.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_af626880915da239eeb0793eb41ab7596"><div class="ttname"><a href="classRobot.html#af626880915da239eeb0793eb41ab7596">Robot::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00118">robot.cpp:118</a></div></div>
+<div class="ttc" id="aclassRobot_html_a9cec7ea9000ee388e058ba6bfbe7640d"><div class="ttname"><a href="classRobot.html#a9cec7ea9000ee388e058ba6bfbe7640d">Robot::generate_access_fields</a></div><div class="ttdeci">void generate_access_fields()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00003">robot.cpp:3</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7e045dcd43e888a9e4cddc2a9e6abdc8"><div class="ttname"><a href="classRobot.html#a7e045dcd43e888a9e4cddc2a9e6abdc8">Robot::workload_checker</a></div><div class="ttdeci">void workload_checker(std::vector&lt; int &gt; &amp;count_vector, tf2::Transform &amp;obj) override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00038">robot.cpp:38</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_ad7080256737d26f2d4499d848e8c854a"><div class="ttname"><a href="classAbstract__robot.html#ad7080256737d26f2d4499d848e8c854a">Abstract_robot::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00057">impl/abstract_robot.h:57</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_aa3bfc2c32585c42ca88f5fc1e663eb93"><div class="ttname"><a href="classAbstract__robot.html#aa3bfc2c32585c42ca88f5fc1e663eb93">Abstract_robot::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00059">impl/abstract_robot.h:59</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html"><div class="ttname"><a href="impl_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_a39fda5c987efad9c391bf4ce236e271f"><div class="ttname"><a href="classRobot.html#a39fda5c987efad9c391bf4ce236e271f">Robot::coll_markers</a></div><div class="ttdeci">std::vector&lt; moveit_msgs::CollisionObject * &gt; coll_markers()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00033">robot.h:33</a></div></div>
+<div class="ttc" id="aclassRobot_html_a0b60a38b7639a58095b3303052e4a801"><div class="ttname"><a href="classRobot.html#a0b60a38b7639a58095b3303052e4a801">Robot::area_calculation</a></div><div class="ttdeci">float area_calculation(tf2::Transform &amp;A, tf2::Transform &amp;B, tf2::Transform &amp;C)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00031">robot.cpp:31</a></div></div>
+<div class="ttc" id="aclassRobot_html"><div class="ttname"><a href="classRobot.html">Robot</a></div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00019">robot.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html_a4d636b2de764243b145577db70637d63"><div class="ttname"><a href="classAbstract__robot.html#a4d636b2de764243b145577db70637d63">Abstract_robot::tf</a></div><div class="ttdeci">tf2::Transform &amp; tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00058">impl/abstract_robot.h:58</a></div></div>
+<div class="ttc" id="aclassRobot_html_a1a73b8eaedcdab4b7defcedd81f8c713"><div class="ttname"><a href="classRobot.html#a1a73b8eaedcdab4b7defcedd81f8c713">Robot::access_fields</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; &amp; access_fields()</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00030">robot.h:30</a></div></div>
+<div class="ttc" id="awing__rviz__decorator_8h_html"><div class="ttname"><a href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_a6821b81b167e8bffbeca4beedc8033f8"><div class="ttname"><a href="classRobot.html#a6821b81b167e8bffbeca4beedc8033f8">Robot::observers_</a></div><div class="ttdeci">std::vector&lt; Abstract_robot_element * &gt; observers_</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00021">robot.h:21</a></div></div>
+<div class="ttc" id="aclassRobot_html_a0ad9bc06ae12dedaf6eb97bc4398c34a"><div class="ttname"><a href="classRobot.html#a0ad9bc06ae12dedaf6eb97bc4398c34a">Robot::Robot</a></div><div class="ttdeci">Robot(std::string &amp;name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8h_source.html#l00027">robot.h:27</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab7bf74de30a186337b05cb05b74d0e73"><div class="ttname"><a href="classRobot.html#ab7bf74de30a186337b05cb05b74d0e73">Robot::check_single_object_collision</a></div><div class="ttdeci">bool check_single_object_collision(tf2::Transform &amp;obj, std::string &amp;str) override</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00070">robot.cpp:70</a></div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_a7eddff501a2c3a3d5feb6c2ec4b016e0"><div class="ttname"><a href="classRobot.html#a7eddff501a2c3a3d5feb6c2ec4b016e0">Robot::register_observers</a></div><div class="ttdeci">void register_observers(Abstract_robot_element *wd)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00182">robot.cpp:182</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+<div class="ttc" id="aclassRobot_html_ab57fc902b6e93336db5310abf05c8a92"><div class="ttname"><a href="classRobot.html#ab57fc902b6e93336db5310abf05c8a92">Robot::check_robot_collision</a></div><div class="ttdeci">bool check_robot_collision(Robot *R)</div><div class="ttdef"><b>Definition:</b> <a href="robot_8cpp_source.html#l00130">robot.cpp:130</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__base__calculation__approach_8cpp.html b/doc/html/robot__base__calculation__approach_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..ebf6aa25d4ffac9e9b813c50614cec200bc126c6
--- /dev/null
+++ b/doc/html/robot__base__calculation__approach_8cpp.html
@@ -0,0 +1,149 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_base_calculation_approach.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">robot_base_calculation_approach.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;filesystem&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base_8h_source.html">bridge/abstract_base.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base__implementation_8h_source.html">bridge/abstract_base_implementation.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="simple__base_8h_source.html">bridge/simple_base.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="simple__base__implementation_8h_source.html">bridge/simple_base_implementation.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot_2abstract__robot_8h_source.html">robot/abstract_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="ceti__robot_8h_source.html">robot/ceti_robot.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__robot__decorator_8h_source.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="panda__decorator_8h_source.html">robot/decorators/panda_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="log__decorator_8h_source.html">robot_element/decorators/log_decorator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="panel_8h_source.html">robot_element/observers/panel.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="rviz__panel_8h_source.html">robot_element/observers/rviz_panel.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="mediator_2abstract__mediator_8h_source.html">mediator/abstract_mediator.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="base__calculation__mediator_8h_source.html">mediator/base_calculation_mediator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_base_calculation_approach.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__base__calculation__approach_8cpp__incl.png" border="0" usemap="#robot__base__calculation__approach_8cpp" alt=""/></div>
+<map name="robot__base__calculation__approach_8cpp" id="robot__base__calculation__approach_8cpp">
+<area shape="rect" title=" " alt="" coords="2539,5,2711,47"/>
+<area shape="rect" title=" " alt="" coords="1018,474,1167,501"/>
+<area shape="rect" title=" " alt="" coords="5369,102,5459,129"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="1527,370,1698,411"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="1505,281,1667,307"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="1691,281,1851,307"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="993,281,1163,307"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="2381,377,2548,404"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="2560,467,2735,508"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="5297,370,5456,411"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="452,191,613,218"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="5318,184,5467,225"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="2925,281,3063,307"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2572,363,2763,419"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="2839,370,3024,411"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="3901,273,4087,315"/>
+<area shape="rect" href="panda__decorator_8h.html" title=" " alt="" coords="3725,184,3898,225"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="2908,184,3099,225"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="3280,184,3465,225"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1977,191,2193,218"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="2275,95,2470,136"/>
+<area shape="rect" title=" " alt="" coords="2733,556,2812,583"/>
+<area shape="rect" title=" " alt="" coords="1881,474,1995,501"/>
+<area shape="rect" title=" " alt="" coords="1269,556,1468,583"/>
+<area shape="rect" title=" " alt="" coords="1489,474,1621,501"/>
+<area shape="rect" title=" " alt="" coords="2019,474,2092,501"/>
+<area shape="rect" title=" " alt="" coords="1406,474,1465,501"/>
+<area shape="rect" title=" " alt="" coords="1646,467,1806,508"/>
+<area shape="rect" title=" " alt="" coords="789,377,941,404"/>
+<area shape="rect" title=" " alt="" coords="1168,377,1300,404"/>
+<area shape="rect" title=" " alt="" coords="621,377,764,404"/>
+<area shape="rect" href="map__reader_8h.html" title=" " alt="" coords="235,281,393,307"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="1289,281,1430,307"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="3048,370,3233,411"/>
+<area shape="rect" title=" " alt="" coords="3898,363,4090,419"/>
+<area shape="rect" title=" " alt="" coords="4114,370,4333,411"/>
+<area shape="rect" title=" " alt="" coords="4357,370,4564,411"/>
+<area shape="rect" title=" " alt="" coords="4588,363,4744,419"/>
+<area shape="rect" title=" " alt="" coords="3461,370,3634,411"/>
+<area shape="rect" title=" " alt="" coords="3658,370,3874,411"/>
+<area shape="rect" title=" " alt="" coords="5035,370,5222,411"/>
+<area shape="rect" title=" " alt="" coords="4820,377,5011,404"/>
+<area shape="rect" title=" " alt="" coords="3189,273,3335,315"/>
+<area shape="rect" title=" " alt="" coords="3461,273,3607,315"/>
+</map>
+</div>
+</div>
+<p><a href="robot__base__calculation__approach_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="robot__base__calculation__approach_8cpp_source.html#l00032">32</a> of file <a class="el" href="robot__base__calculation__approach_8cpp_source.html">robot_base_calculation_approach.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__base__calculation__approach_8cpp__incl.map b/doc/html/robot__base__calculation__approach_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4d5e44e19f9229f83c62635ef7d6b55197581699
--- /dev/null
+++ b/doc/html/robot__base__calculation__approach_8cpp__incl.map
@@ -0,0 +1,46 @@
+<map id="robot_base_calculation_approach.cpp" name="robot_base_calculation_approach.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="2539,5,2711,47"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1018,474,1167,501"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5369,102,5459,129"/>
+<area shape="rect" id="node4" href="$abstract__param__reader_8h.html" title=" " alt="" coords="1527,370,1698,411"/>
+<area shape="rect" id="node12" href="$robot__reader_8h.html" title=" " alt="" coords="1505,281,1667,307"/>
+<area shape="rect" id="node13" href="$wing__reader_8h.html" title=" " alt="" coords="1691,281,1851,307"/>
+<area shape="rect" id="node14" href="$abstract__base_8h.html" title=" " alt="" coords="993,281,1163,307"/>
+<area shape="rect" id="node18" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="2381,377,2548,404"/>
+<area shape="rect" id="node19" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="2560,467,2735,508"/>
+<area shape="rect" id="node20" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="5297,370,5456,411"/>
+<area shape="rect" id="node21" href="$simple__base_8h.html" title=" " alt="" coords="452,191,613,218"/>
+<area shape="rect" id="node24" href="$simple__base__implementation_8h.html" title=" " alt="" coords="5318,184,5467,225"/>
+<area shape="rect" id="node25" href="$ceti__robot_8h.html" title=" " alt="" coords="2925,281,3063,307"/>
+<area shape="rect" id="node26" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="2572,363,2763,419"/>
+<area shape="rect" id="node27" href="$panel_8h.html" title=" " alt="" coords="2839,370,3024,411"/>
+<area shape="rect" id="node35" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="3901,273,4087,315"/>
+<area shape="rect" id="node38" href="$panda__decorator_8h.html" title=" " alt="" coords="3725,184,3898,225"/>
+<area shape="rect" id="node39" href="$log__decorator_8h.html" title=" " alt="" coords="2908,184,3099,225"/>
+<area shape="rect" id="node41" href="$rviz__panel_8h.html" title=" " alt="" coords="3280,184,3465,225"/>
+<area shape="rect" id="node43" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1977,191,2193,218"/>
+<area shape="rect" id="node44" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="2275,95,2470,136"/>
+<area shape="rect" id="node5" title=" " alt="" coords="2733,556,2812,583"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1881,474,1995,501"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1269,556,1468,583"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1489,474,1621,501"/>
+<area shape="rect" id="node9" title=" " alt="" coords="2019,474,2092,501"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1406,474,1465,501"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1646,467,1806,508"/>
+<area shape="rect" id="node15" title=" " alt="" coords="789,377,941,404"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1168,377,1300,404"/>
+<area shape="rect" id="node17" title=" " alt="" coords="621,377,764,404"/>
+<area shape="rect" id="node22" href="$map__reader_8h.html" title=" " alt="" coords="235,281,393,307"/>
+<area shape="rect" id="node23" href="$ts__reader_8h.html" title=" " alt="" coords="1289,281,1430,307"/>
+<area shape="rect" id="node28" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="3048,370,3233,411"/>
+<area shape="rect" id="node29" title=" " alt="" coords="3898,363,4090,419"/>
+<area shape="rect" id="node30" title=" " alt="" coords="4114,370,4333,411"/>
+<area shape="rect" id="node31" title=" " alt="" coords="4357,370,4564,411"/>
+<area shape="rect" id="node32" title=" " alt="" coords="4588,363,4744,419"/>
+<area shape="rect" id="node33" title=" " alt="" coords="3461,370,3634,411"/>
+<area shape="rect" id="node34" title=" " alt="" coords="3658,370,3874,411"/>
+<area shape="rect" id="node36" title=" " alt="" coords="5035,370,5222,411"/>
+<area shape="rect" id="node37" title=" " alt="" coords="4820,377,5011,404"/>
+<area shape="rect" id="node40" title=" " alt="" coords="3189,273,3335,315"/>
+<area shape="rect" id="node42" title=" " alt="" coords="3461,273,3607,315"/>
+</map>
diff --git a/doc/html/robot__base__calculation__approach_8cpp__incl.md5 b/doc/html/robot__base__calculation__approach_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..ab472ae4266c9c238bf44eebdd3a52f20475dbcb
--- /dev/null
+++ b/doc/html/robot__base__calculation__approach_8cpp__incl.md5
@@ -0,0 +1 @@
+5cb2fd5d7758921a4c4a2d763c71a148
\ No newline at end of file
diff --git a/doc/html/robot__base__calculation__approach_8cpp__incl.png b/doc/html/robot__base__calculation__approach_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..20f6f37689eced204ac24d255be0e9a88563c579
Binary files /dev/null and b/doc/html/robot__base__calculation__approach_8cpp__incl.png differ
diff --git a/doc/html/robot__base__calculation__approach_8cpp_source.html b/doc/html/robot__base__calculation__approach_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ca0e1eced6776619e773dcfcd62b7dee799f6b0
--- /dev/null
+++ b/doc/html/robot__base__calculation__approach_8cpp_source.html
@@ -0,0 +1,161 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_base_calculation_approach.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_base_calculation_approach.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__base__calculation__approach_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#include &lt;filesystem&gt;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160; </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base_8h.html">bridge/abstract_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base__implementation_8h.html">bridge/abstract_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="simple__base_8h.html">bridge/simple_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="simple__base__implementation_8h.html">bridge/simple_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot_2abstract__robot_8h.html">robot/abstract_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ceti__robot_8h.html">robot/ceti_robot.h</a>&quot;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__robot__decorator_8h.html">robot/decorators/abstract_robot_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panda__decorator_8h.html">robot/decorators/panda_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">robot_element/decorators/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="log__decorator_8h.html">robot_element/decorators/log_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panel_8h.html">robot_element/observers/panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rviz__panel_8h.html">robot_element/observers/rviz_panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="mediator_2abstract__mediator_8h.html">mediator/abstract_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="base__calculation__mediator_8h.html">mediator/base_calculation_mediator.h</a>&quot;</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">   32</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv){</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    ros::init(argc, argv, <span class="stringliteral">&quot;robot_base_calculation_apprioach&quot;</span>);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; n(<span class="keyword">new</span> ros::NodeHandle);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    std::shared_ptr&lt;Abstract_base&gt; simple_base = std::make_shared&lt;Simple_base&gt;(n);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    std::shared_ptr&lt;Abstract_base_implementation&gt; simple_base_implementation = std::make_shared&lt;Simple_base_implementation&gt;();</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    std::shared_ptr&lt;Base_calculation_mediator&gt; mediator = std::make_shared&lt;Base_calculation_mediator&gt;(n);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    simple_base-&gt;set_implementation(simple_base_implementation);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; results = simple_base-&gt;base_calculation();</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keyword">auto</span> rd = mediator-&gt;robot_reader()-&gt;robot_data();</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; rd.size() ;i++){</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        std::unique_ptr&lt;Abstract_robot&gt; ceti = std::make_unique&lt;Ceti_robot&gt;(rd[i].name_, rd[i].pose_, rd[i].size_);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        std::unique_ptr&lt;Panda_decorator&gt; ceti_panda = std::make_unique&lt;Panda_decorator&gt;(std::move(ceti));</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;penis&quot;</span>);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        mediator-&gt;connect_robots(std::move(ceti_panda));</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    }</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    mediator-&gt;set_result_vector(results);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160; </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="comment">//mediator-&gt;set_dirname(filename);</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keyword">auto</span> wd = mediator-&gt;wing_reader()-&gt;wing_data();</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160; </div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; mediator-&gt;robots().size(); i++){</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="comment">// iterate wing date</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;            <span class="keywordflow">for</span>(<a class="code" href="structobject__data.html">object_data</a>&amp; w : wd.at(mediator-&gt;robots()[i]-&gt;name()).first){</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                <span class="comment">// calculate relative panel transform</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                w.pose_ = mediator-&gt;robots()[i]-&gt;tf().inverse() * w.pose_;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;            }</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        } <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range&amp; oor) {</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;No panel data for %s&quot;</span>, mediator-&gt;robots()[i]-&gt;name().c_str());</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        }</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160; </div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="comment">// set mask data</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;            <span class="keyword">auto</span> ceti_bot = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classCeti__robot.html">Ceti_robot</a>*<span class="keyword">&gt;</span>(mediator-&gt;robots()[i]-&gt;next());</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;            ceti_bot-&gt;<a class="code" href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">set_observer_mask</a>(<span class="keyword">static_cast&lt;</span><a class="code" href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a><span class="keyword">&gt;</span>(wd.at(mediator-&gt;robots()[i]-&gt;name()).second));</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        } <span class="keywordflow">catch</span>(<span class="keyword">const</span> std::out_of_range&amp; oor) {</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;No mask data for %s&quot;</span>, mediator-&gt;robots()[i]-&gt;name().c_str());</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        }</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    }</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    mediator-&gt;set_panel();</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">//mediator-&gt;mediate();</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">    //map_loader-&gt;write_task(robo);</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">    //free(rviz_right);</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="comment">    //free(rviz_mid);</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">    //free(rviz_left);</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="comment">    free(map_loader);</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">    free(strategy);</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment">    //free(robo);</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">    //free(robo2);</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html_a86d9f27c0ebcbc7b7ce79a3ebfe60a16"><div class="ttname"><a href="classCeti__robot.html#a86d9f27c0ebcbc7b7ce79a3ebfe60a16">Ceti_robot::set_observer_mask</a></div><div class="ttdeci">void set_observer_mask(int i)</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00118">ceti_robot.h:118</a></div></div>
+<div class="ttc" id="alog__decorator_8h_html"><div class="ttname"><a href="log__decorator_8h.html">log_decorator.h</a></div></div>
+<div class="ttc" id="aabstract__robot__decorator_8h_html"><div class="ttname"><a href="abstract__robot__decorator_8h.html">abstract_robot_decorator.h</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aabstract__base_8h_html"><div class="ttname"><a href="abstract__base_8h.html">abstract_base.h</a></div></div>
+<div class="ttc" id="aceti__robot_8h_html"><div class="ttname"><a href="ceti__robot_8h.html">ceti_robot.h</a></div></div>
+<div class="ttc" id="arobot_2abstract__robot_8h_html"><div class="ttname"><a href="robot_2abstract__robot_8h.html">abstract_robot.h</a></div></div>
+<div class="ttc" id="abase__calculation__mediator_8h_html"><div class="ttname"><a href="base__calculation__mediator_8h.html">base_calculation_mediator.h</a></div></div>
+<div class="ttc" id="amediator_2abstract__mediator_8h_html"><div class="ttname"><a href="mediator_2abstract__mediator_8h.html">abstract_mediator.h</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="arobot__base__calculation__approach_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="robot__base__calculation__approach_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="robot__base__calculation__approach_8cpp_source.html#l00032">robot_base_calculation_approach.cpp:32</a></div></div>
+<div class="ttc" id="arviz__panel_8h_html"><div class="ttname"><a href="rviz__panel_8h.html">rviz_panel.h</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassCeti__robot_html"><div class="ttname"><a href="classCeti__robot.html">Ceti_robot</a></div><div class="ttdoc">Concrete Ceti-Robot.</div><div class="ttdef"><b>Definition:</b> <a href="ceti__robot_8h_source.html#l00022">ceti_robot.h:22</a></div></div>
+<div class="ttc" id="arobot__element_2decorators_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot_8h_html_a6772e3f5ff2cf1ed8a24b23c0992dad1"><div class="ttname"><a href="impl_2abstract__robot_8h.html#a6772e3f5ff2cf1ed8a24b23c0992dad1">wing_config</a></div><div class="ttdeci">wing_config</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00014">impl/abstract_robot.h:14</a></div></div>
+<div class="ttc" id="asimple__base_8h_html"><div class="ttname"><a href="simple__base_8h.html">simple_base.h</a></div></div>
+<div class="ttc" id="apanda__decorator_8h_html"><div class="ttname"><a href="panda__decorator_8h.html">panda_decorator.h</a></div></div>
+<div class="ttc" id="apanel_8h_html"><div class="ttname"><a href="panel_8h.html">panel.h</a></div></div>
+<div class="ttc" id="asimple__base__implementation_8h_html"><div class="ttname"><a href="simple__base__implementation_8h.html">simple_base_implementation.h</a></div></div>
+<div class="ttc" id="aabstract__base__implementation_8h_html"><div class="ttname"><a href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2abstract__robot__element_8h.html b/doc/html/robot__element_2abstract__robot__element_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..af8e676e265bb51f43072fff57c6cc3eb4685bef
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h.html
@@ -0,0 +1,96 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">robot_element/abstract_robot_element.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_element/abstract_robot_element.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2abstract__robot__element_8h__incl.png" border="0" usemap="#abstract__robot__element_8h" alt=""/></div>
+<map name="abstract__robot__element_8h" id="abstract__robot__element_8h">
+<area shape="rect" title=" " alt="" coords="31,5,221,32"/>
+<area shape="rect" title=" " alt="" coords="5,80,84,107"/>
+<area shape="rect" title=" " alt="" coords="108,80,307,107"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2abstract__robot__element_8h__dep__incl.png" border="0" usemap="#abstract__robot__element_8hdep" alt=""/></div>
+<map name="abstract__robot__element_8hdep" id="abstract__robot__element_8hdep">
+<area shape="rect" title=" " alt="" coords="1300,5,1489,32"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1093,244,1246,271"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="813,393,985,435"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="835,87,963,114"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="1468,169,1567,196"/>
+<area shape="rect" href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1243,80,1421,121"/>
+<area shape="rect" href="robot__element_2observers_2field_8h.html" title=" " alt="" coords="1497,87,1559,114"/>
+<area shape="rect" href="moveit__panel_8h.html" title=" " alt="" coords="1932,169,2055,196"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="1739,87,1810,114"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="1443,319,1653,345"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="987,319,1155,345"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="1436,401,1660,427"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="344,169,469,196"/>
+<area shape="rect" href="abstract__robot__decorator_8h.html" title=" " alt="" coords="800,169,997,196"/>
+<area shape="rect" href="panda__decorator_8h.html" title=" " alt="" coords="689,244,831,271"/>
+<area shape="rect" href="abstract__robot_8cpp.html" title=" " alt="" coords="633,169,775,196"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="199,244,435,271"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="93,319,320,345"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="459,244,575,271"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="395,319,525,345"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="85,401,328,427"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="1539,244,1653,271"/>
+<area shape="rect" href="panda__decorator_8cpp.html" title=" " alt="" coords="651,319,810,345"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="1271,244,1393,271"/>
+<area shape="rect" href="log__decorator_8cpp.html" title=" " alt="" coords="1280,319,1419,345"/>
+<area shape="rect" href="field_8cpp.html" title=" " alt="" coords="1591,169,1670,196"/>
+<area shape="rect" href="moveit__panel_8cpp.html" title=" " alt="" coords="1924,244,2063,271"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="1792,244,1893,271"/>
+<area shape="rect" href="panel_8cpp.html" title=" " alt="" coords="1772,169,1857,196"/>
+<area shape="rect" href="rviz__panel_8cpp.html" title=" " alt="" coords="1830,319,1946,345"/>
+</map>
+</div>
+</div>
+<p><a href="robot__element_2abstract__robot__element_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element.html">Abstract_robot_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.map b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..9daeed6f94cfb2b1a268e0c9f449564aec8f2542
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.map
@@ -0,0 +1,32 @@
+<map id="abstract_robot_element.h" name="abstract_robot_element.h">
+<area shape="rect" id="node1" title=" " alt="" coords="1300,5,1489,32"/>
+<area shape="rect" id="node2" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1093,244,1246,271"/>
+<area shape="rect" id="node5" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="813,393,985,435"/>
+<area shape="rect" id="node7" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="835,87,963,114"/>
+<area shape="rect" id="node14" href="$ceti__robot_8h.html" title=" " alt="" coords="1468,169,1567,196"/>
+<area shape="rect" id="node20" href="$robot__element_2decorators_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="1243,80,1421,121"/>
+<area shape="rect" id="node23" href="$robot__element_2observers_2field_8h.html" title=" " alt="" coords="1497,87,1559,114"/>
+<area shape="rect" id="node25" href="$moveit__panel_8h.html" title=" " alt="" coords="1932,169,2055,196"/>
+<area shape="rect" id="node27" href="$panel_8h.html" title=" " alt="" coords="1739,87,1810,114"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="1443,319,1653,345"/>
+<area shape="rect" id="node6" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="987,319,1155,345"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="1436,401,1660,427"/>
+<area shape="rect" id="node8" href="$abstract__base_8h.html" title=" " alt="" coords="344,169,469,196"/>
+<area shape="rect" id="node16" href="$abstract__robot__decorator_8h.html" title=" " alt="" coords="800,169,997,196"/>
+<area shape="rect" id="node17" href="$panda__decorator_8h.html" title=" " alt="" coords="689,244,831,271"/>
+<area shape="rect" id="node19" href="$abstract__robot_8cpp.html" title=" " alt="" coords="633,169,775,196"/>
+<area shape="rect" id="node9" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="199,244,435,271"/>
+<area shape="rect" id="node10" href="$simple__base__implementation_8h.html" title=" " alt="" coords="93,319,320,345"/>
+<area shape="rect" id="node13" href="$simple__base_8h.html" title=" " alt="" coords="459,244,575,271"/>
+<area shape="rect" id="node12" href="$simple__base_8cpp.html" title=" " alt="" coords="395,319,525,345"/>
+<area shape="rect" id="node11" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="85,401,328,427"/>
+<area shape="rect" id="node15" href="$ceti__robot_8cpp.html" title=" " alt="" coords="1539,244,1653,271"/>
+<area shape="rect" id="node18" href="$panda__decorator_8cpp.html" title=" " alt="" coords="651,319,810,345"/>
+<area shape="rect" id="node21" href="$log__decorator_8h.html" title=" " alt="" coords="1271,244,1393,271"/>
+<area shape="rect" id="node22" href="$log__decorator_8cpp.html" title=" " alt="" coords="1280,319,1419,345"/>
+<area shape="rect" id="node24" href="$field_8cpp.html" title=" " alt="" coords="1591,169,1670,196"/>
+<area shape="rect" id="node26" href="$moveit__panel_8cpp.html" title=" " alt="" coords="1924,244,2063,271"/>
+<area shape="rect" id="node28" href="$rviz__panel_8h.html" title=" " alt="" coords="1792,244,1893,271"/>
+<area shape="rect" id="node30" href="$panel_8cpp.html" title=" " alt="" coords="1772,169,1857,196"/>
+<area shape="rect" id="node29" href="$rviz__panel_8cpp.html" title=" " alt="" coords="1830,319,1946,345"/>
+</map>
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.md5 b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..741728cb3933f5a0ec69a8fcb587d213eb75df99
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.md5
@@ -0,0 +1 @@
+7a4ad5c2f2396a4d9b21d6e7f6b67cee
\ No newline at end of file
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.png b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..8fb1cdd3414c8f75e227a001b93d100ac3520720
Binary files /dev/null and b/doc/html/robot__element_2abstract__robot__element_8h__dep__incl.png differ
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__incl.map b/doc/html/robot__element_2abstract__robot__element_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..dee53e35d9bc68be61c63ce68cf7c80d2d779015
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h__incl.map
@@ -0,0 +1,5 @@
+<map id="abstract_robot_element.h" name="abstract_robot_element.h">
+<area shape="rect" id="node1" title=" " alt="" coords="31,5,221,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,80,84,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,80,307,107"/>
+</map>
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__incl.md5 b/doc/html/robot__element_2abstract__robot__element_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..b307da269e897679e88ea857cb9f55c149756bd8
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h__incl.md5
@@ -0,0 +1 @@
+0589cb734afc346946804defb44bf3ad
\ No newline at end of file
diff --git a/doc/html/robot__element_2abstract__robot__element_8h__incl.png b/doc/html/robot__element_2abstract__robot__element_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..4f8d2f425106bae8ecccbee03b491124d32deb73
Binary files /dev/null and b/doc/html/robot__element_2abstract__robot__element_8h__incl.png differ
diff --git a/doc/html/robot__element_2abstract__robot__element_8h_source.html b/doc/html/robot__element_2abstract__robot__element_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..361700a906e91a3f386f9038632f501a5b5f14fc
--- /dev/null
+++ b/doc/html/robot__element_2abstract__robot__element_8h_source.html
@@ -0,0 +1,94 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_element/abstract_robot_element.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__element_2abstract__robot__element_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_ELEMENT_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_ELEMENT_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a> {</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">    9</a></span>&#160;    std::string <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    tf2::Transform <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">   12</a></span>&#160;    tf2::Vector3 <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">   14</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">   17</a></span>&#160;    <a class="code" href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element</a>(tf2::Transform tf, std::string <a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>, tf2::Vector3 <a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>) </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    : <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>(tf)</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    , <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>(<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>)</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    , <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>(<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>)</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    , <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0))) {}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">   24</a></span>&#160;    <span class="keyword">inline</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">relative_tf</a>(){ <span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;}</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">   25</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">set_relative_tf</a>(tf2::Transform tf) { <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>= tf;}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">   27</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf2::Transform&amp; tf) {<a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>= tf * <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a>;}</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">   28</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">set_world_tf</a>(tf2::Transform&amp; tf) { <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a> = tf;}</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keyword">virtual</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">bounds</a>()=0;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <span class="keyword">virtual</span> tf2::Transform&amp; <a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>()=0;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <span class="keyword">virtual</span> tf2::Vector3&amp; <a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>()=0;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">virtual</span> std::string&amp; <a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>()=0;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf2::Transform&amp; tf)= 0;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;};</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__element_html_a4d44edf1d412564ef916f16ee9035116"><div class="ttname"><a href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00014">robot_element/abstract_robot_element.h:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_aa7ee89ce290dd2e6408a9d2118af93f8"><div class="ttname"><a href="classAbstract__robot__element.html#aa7ee89ce290dd2e6408a9d2118af93f8">Abstract_robot_element::set_world_tf</a></div><div class="ttdeci">void set_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00028">robot_element/abstract_robot_element.h:28</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ab63f250226570c92077ef4555d6f5890"><div class="ttname"><a href="classAbstract__robot__element.html#ab63f250226570c92077ef4555d6f5890">Abstract_robot_element::Abstract_robot_element</a></div><div class="ttdeci">Abstract_robot_element(tf2::Transform tf, std::string name, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00017">robot_element/abstract_robot_element.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a83f046bb2fb1009832091cf8502af956"><div class="ttname"><a href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element::relative_tf_</a></div><div class="ttdeci">tf2::Transform relative_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00011">impl/abstract_robot_element.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a910a29582a54972c947fa57bbdc444ec"><div class="ttname"><a href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element::name</a></div><div class="ttdeci">virtual std::string &amp; name()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a402345bc67c9a2d09f903d910ee20405"><div class="ttname"><a href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element::bounds</a></div><div class="ttdeci">virtual std::vector&lt; tf2::Transform &gt; &amp; bounds()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a2eb0ca7627bba7b58e85046532e68269"><div class="ttname"><a href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element::size</a></div><div class="ttdeci">virtual tf2::Vector3 &amp; size()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00027">robot_element/abstract_robot_element.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a12e6954b51765e18a7f0c2d8c4eca0c6"><div class="ttname"><a href="classAbstract__robot__element.html#a12e6954b51765e18a7f0c2d8c4eca0c6">Abstract_robot_element::set_relative_tf</a></div><div class="ttdeci">void set_relative_tf(tf2::Transform tf)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00025">robot_element/abstract_robot_element.h:25</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_adcaadf1f399625d67747ce746a0cc928"><div class="ttname"><a href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00009">robot_element/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad3ee9aff6d4fb1e4e90775e943e65861"><div class="ttname"><a href="classAbstract__robot__element.html#ad3ee9aff6d4fb1e4e90775e943e65861">Abstract_robot_element::relative_tf</a></div><div class="ttdeci">tf2::Transform &amp; relative_tf()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00024">robot_element/abstract_robot_element.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_aecee1e1a5ca1f40473f325583b39dd9d"><div class="ttname"><a href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element::update</a></div><div class="ttdeci">virtual void update(tf2::Transform &amp;tf)=0</div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h.html b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..63c02ae12ebe397d1fb7d886babd43d539cf4839
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h.html
@@ -0,0 +1,77 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">robot_element/decorators/abstract_robot_element_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_element/decorators/abstract_robot_element_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.png" border="0" usemap="#abstract__robot__element__decorator_8h" alt=""/></div>
+<map name="abstract__robot__element__decorator_8h" id="abstract__robot__element__decorator_8h">
+<area shape="rect" title=" " alt="" coords="19,5,196,47"/>
+<area shape="rect" title=" " alt="" coords="5,184,84,211"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,95,257,136"/>
+<area shape="rect" title=" " alt="" coords="108,184,307,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.png" border="0" usemap="#abstract__robot__element__decorator_8hdep" alt=""/></div>
+<map name="abstract__robot__element__decorator_8hdep" id="abstract__robot__element__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="515,5,693,47"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="361,95,460,121"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="445,319,617,360"/>
+<area shape="rect" href="log__decorator_8h.html" title=" " alt="" coords="543,169,665,196"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="125,169,278,196"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="249,244,458,271"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="353,169,468,196"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="5,244,173,271"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="196,326,420,353"/>
+<area shape="rect" href="log__decorator_8cpp.html" title=" " alt="" coords="593,244,732,271"/>
+</map>
+</div>
+</div>
+<p><a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.map b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5697ed182c34f7c982c2e1bfc89d22c442ff2945
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.map
@@ -0,0 +1,12 @@
+<map id="abstract_robot_element_decorator.h" name="abstract_robot_element_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="515,5,693,47"/>
+<area shape="rect" id="node2" href="$ceti__robot_8h.html" title=" " alt="" coords="361,95,460,121"/>
+<area shape="rect" id="node6" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="445,319,617,360"/>
+<area shape="rect" id="node9" href="$log__decorator_8h.html" title=" " alt="" coords="543,169,665,196"/>
+<area shape="rect" id="node3" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="125,169,278,196"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="249,244,458,271"/>
+<area shape="rect" id="node8" href="$ceti__robot_8cpp.html" title=" " alt="" coords="353,169,468,196"/>
+<area shape="rect" id="node7" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="5,244,173,271"/>
+<area shape="rect" id="node5" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="196,326,420,353"/>
+<area shape="rect" id="node10" href="$log__decorator_8cpp.html" title=" " alt="" coords="593,244,732,271"/>
+</map>
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.md5 b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..aef800608dd768548c5588f325776504e0cabbcc
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+282593dbf4c8d9c431b5b010b5d04ba0
\ No newline at end of file
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.png b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..13629e5567dec94a85142f9a6cb90157ad0f3eaf
Binary files /dev/null and b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__dep__incl.png differ
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.map b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..f09cc9876104932c8fd82f3bf6a22f55e294e838
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="abstract_robot_element_decorator.h" name="abstract_robot_element_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="19,5,196,47"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,184,84,211"/>
+<area shape="rect" id="node3" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,95,257,136"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,184,307,211"/>
+</map>
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.md5 b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a74b7fb9462cc175cf4d19e2b3910e3994b19d47
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.md5
@@ -0,0 +1 @@
+358da05175e76045a6f40336f8d51b68
\ No newline at end of file
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.png b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..41b5af1cfa362b64da04476e6018721344ab0733
Binary files /dev/null and b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h__incl.png differ
diff --git a/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe22244ea97e2a90dbd72ef52b1c8f9c37c75197
--- /dev/null
+++ b/doc/html/robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html
@@ -0,0 +1,89 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: abstract_robot_element_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_a9a3966004e74d386e58ffd98a25c86a.html">decorators</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_element/decorators/abstract_robot_element_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__element_2decorators_2abstract__robot__element__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ABSTRACT_ROBOT_ELEMENT_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ABSTRACT_ROBOT_ELEMENT_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">class </span><a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">    9</a></span>&#160;    std::shared_ptr&lt;ros::NodeHandle&gt; <a class="code" href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">nh_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">   10</a></span>&#160;    std::unique_ptr&lt;Abstract_robot_element&gt; <a class="code" href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">next_</a>;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">   14</a></span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator</a>(std::unique_ptr&lt;Abstract_robot_element&gt; <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>) </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    : <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), <span class="stringliteral">&quot;Blanc&quot;</span>, tf2::Vector3(0,0,0))</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    , <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>(std::move(<a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>)){};</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    </div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">   18</a></span>&#160;    <span class="keyword">inline</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>(){<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>.get();}</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">   20</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">bounds</a>();}</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">   21</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">world_tf</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>();}</div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">   22</a></span>&#160;    std::string&amp; <a class="code" href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">name</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>();}</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">   23</a></span>&#160;    tf2::Vector3&amp; <a class="code" href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">size</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>();}</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>()=0;</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">   27</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>-&gt;<a class="code" href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">update</a>(tf);}</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">output_filter</a>()=0;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;};</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a3594b46365559d7304942f983bddab03"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a3594b46365559d7304942f983bddab03">Abstract_robot_element_decorator::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00009">robot_element/decorators/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a910a29582a54972c947fa57bbdc444ec"><div class="ttname"><a href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element::name</a></div><div class="ttdeci">virtual std::string &amp; name()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a8042389be7d08be2d2792810078ac327"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a8042389be7d08be2d2792810078ac327">Abstract_robot_element_decorator::output_filter</a></div><div class="ttdeci">virtual void output_filter()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ac06ca3833192af0e719c22419c07ccbb"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ac06ca3833192af0e719c22419c07ccbb">Abstract_robot_element_decorator::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00020">robot_element/decorators/abstract_robot_element_decorator.h:20</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a402345bc67c9a2d09f903d910ee20405"><div class="ttname"><a href="classAbstract__robot__element.html#a402345bc67c9a2d09f903d910ee20405">Abstract_robot_element::bounds</a></div><div class="ttdeci">virtual std::vector&lt; tf2::Transform &gt; &amp; bounds()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a2eb0ca7627bba7b58e85046532e68269"><div class="ttname"><a href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element::size</a></div><div class="ttdeci">virtual tf2::Vector3 &amp; size()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00027">robot_element/decorators/abstract_robot_element_decorator.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a2c76b8c0d4e487517e8c874e75613162"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a2c76b8c0d4e487517e8c874e75613162">Abstract_robot_element_decorator::Abstract_robot_element_decorator</a></div><div class="ttdeci">Abstract_robot_element_decorator(std::unique_ptr&lt; Abstract_robot_element &gt; next)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00014">robot_element/decorators/abstract_robot_element_decorator.h:14</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_afa68bc27f679beb896722f0eebe6d719"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#afa68bc27f679beb896722f0eebe6d719">Abstract_robot_element_decorator::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00022">robot_element/decorators/abstract_robot_element_decorator.h:22</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ad077cbfa7a43d1212b78cd61bcbf37a6"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ad077cbfa7a43d1212b78cd61bcbf37a6">Abstract_robot_element_decorator::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00021">robot_element/decorators/abstract_robot_element_decorator.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_abe4aed220334766bd4ec903429006830"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#abe4aed220334766bd4ec903429006830">Abstract_robot_element_decorator::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00023">robot_element/decorators/abstract_robot_element_decorator.h:23</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_aecee1e1a5ca1f40473f325583b39dd9d"><div class="ttname"><a href="classAbstract__robot__element.html#aecee1e1a5ca1f40473f325583b39dd9d">Abstract_robot_element::update</a></div><div class="ttdeci">virtual void update(tf2::Transform &amp;tf)=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ad46c4941160e802f67afa20b4a85d08e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ad46c4941160e802f67afa20b4a85d08e">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">std::unique_ptr&lt; Abstract_robot_element &gt; next_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00010">robot_element/decorators/abstract_robot_element_decorator.h:10</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2observers_2field_8h.html b/doc/html/robot__element_2observers_2field_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..5299375ce29f4277456669cf8a1c510ca047f62b
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">robot_element/observers/field.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="robot__element_2abstract__robot__element_8h_source.html">robot_element/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_element/observers/field.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2observers_2field_8h__incl.png" border="0" usemap="#field_8h" alt=""/></div>
+<map name="field_8h" id="field_8h">
+<area shape="rect" title=" " alt="" coords="76,5,139,32"/>
+<area shape="rect" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,80,257,121"/>
+<area shape="rect" title=" " alt="" coords="108,169,307,196"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__element_2observers_2field_8h__dep__incl.png" border="0" usemap="#field_8hdep" alt=""/></div>
+<map name="field_8hdep" id="field_8hdep">
+<area shape="rect" title=" " alt="" coords="506,5,569,32"/>
+<area shape="rect" href="ceti__robot_8h.html" title=" " alt="" coords="432,80,531,107"/>
+<area shape="rect" href="field_8cpp.html" title=" " alt="" coords="555,80,634,107"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="283,155,437,181"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="53,229,262,256"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,304,426,345"/>
+<area shape="rect" href="ceti__robot_8cpp.html" title=" " alt="" coords="580,155,695,181"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="337,229,505,256"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,311,229,338"/>
+</map>
+</div>
+</div>
+<p><a href="robot__element_2observers_2field_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classField.html">Field</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__element_2observers_2field_8h__dep__incl.map b/doc/html/robot__element_2observers_2field_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6e8dab123708f9c3209c92b07cf9bca13bc18419
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h__dep__incl.map
@@ -0,0 +1,11 @@
+<map id="field.h" name="field.h">
+<area shape="rect" id="node1" title=" " alt="" coords="506,5,569,32"/>
+<area shape="rect" id="node2" href="$ceti__robot_8h.html" title=" " alt="" coords="432,80,531,107"/>
+<area shape="rect" id="node9" href="$field_8cpp.html" title=" " alt="" coords="555,80,634,107"/>
+<area shape="rect" id="node3" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="283,155,437,181"/>
+<area shape="rect" id="node4" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="53,229,262,256"/>
+<area shape="rect" id="node6" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,304,426,345"/>
+<area shape="rect" id="node8" href="$ceti__robot_8cpp.html" title=" " alt="" coords="580,155,695,181"/>
+<area shape="rect" id="node7" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="337,229,505,256"/>
+<area shape="rect" id="node5" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,311,229,338"/>
+</map>
diff --git a/doc/html/robot__element_2observers_2field_8h__dep__incl.md5 b/doc/html/robot__element_2observers_2field_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..cc167c2f0e8958d867545156496578136e8cf0a1
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h__dep__incl.md5
@@ -0,0 +1 @@
+46d32a4595524b21dfbacbb73c15b8a8
\ No newline at end of file
diff --git a/doc/html/robot__element_2observers_2field_8h__dep__incl.png b/doc/html/robot__element_2observers_2field_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..1160bcc1bc63f592d10e22d558667a0bc3f86a7d
Binary files /dev/null and b/doc/html/robot__element_2observers_2field_8h__dep__incl.png differ
diff --git a/doc/html/robot__element_2observers_2field_8h__incl.map b/doc/html/robot__element_2observers_2field_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..c1d1209450a152600eed1def5f68533b9cd0568f
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h__incl.map
@@ -0,0 +1,6 @@
+<map id="field.h" name="field.h">
+<area shape="rect" id="node1" title=" " alt="" coords="76,5,139,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,169,84,196"/>
+<area shape="rect" id="node3" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="83,80,257,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,169,307,196"/>
+</map>
diff --git a/doc/html/robot__element_2observers_2field_8h__incl.md5 b/doc/html/robot__element_2observers_2field_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..4517559ef664dd244c39da59aa64c030adb20f0b
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h__incl.md5
@@ -0,0 +1 @@
+0d07a94445cc008ee64f217db30c2975
\ No newline at end of file
diff --git a/doc/html/robot__element_2observers_2field_8h__incl.png b/doc/html/robot__element_2observers_2field_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..b89d0b81c58c7fe9830584927bead63450ad1c71
Binary files /dev/null and b/doc/html/robot__element_2observers_2field_8h__incl.png differ
diff --git a/doc/html/robot__element_2observers_2field_8h_source.html b/doc/html/robot__element_2observers_2field_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9214b2537749185ff1cbfd2fa2a6b6ad884b3cbb
--- /dev/null
+++ b/doc/html/robot__element_2observers_2field_8h_source.html
@@ -0,0 +1,76 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: field.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_element/observers/field.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__element_2observers_2field_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef FIELD_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define FIELD_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__element_2abstract__robot__element_8h.html">robot_element/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="keyword">class </span><a class="code" href="classField.html">Field</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <a class="code" href="classField.html#a3937b0953056acede15814ada1053f9a">Field</a>(tf2::Transform tf);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        </div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">   11</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">set_name</a>(std::string str) {<a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a> = str;}</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">   12</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">set_set</a>(tf2::Vector3&amp; vec) {<a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a> = vec;}</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">   14</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{this-&gt;<a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf);}</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">   16</a></span>&#160;    std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">bounds</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">bounds_</a>;}</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">   17</a></span>&#160;    tf2::Transform&amp; <a class="code" href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">world_tf</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>;};</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">   18</a></span>&#160;    std::string&amp; <a class="code" href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">name</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">   19</a></span>&#160;    tf2::Vector3&amp; <a class="code" href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">size</a>()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>;}</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;};</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="arobot__element_2abstract__robot__element_8h_html"><div class="ttname"><a href="robot__element_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a4d44edf1d412564ef916f16ee9035116"><div class="ttname"><a href="classAbstract__robot__element.html#a4d44edf1d412564ef916f16ee9035116">Abstract_robot_element::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00014">robot_element/abstract_robot_element.h:14</a></div></div>
+<div class="ttc" id="aclassField_html_a769e61adfbb8e8b261da88fab1190f4d"><div class="ttname"><a href="classField.html#a769e61adfbb8e8b261da88fab1190f4d">Field::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00017">robot_element/observers/field.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassField_html_a6e8e789d6defcbc56d62e05a29d452fb"><div class="ttname"><a href="classField.html#a6e8e789d6defcbc56d62e05a29d452fb">Field::set_set</a></div><div class="ttdeci">void set_set(tf2::Vector3 &amp;vec)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00012">robot_element/observers/field.h:12</a></div></div>
+<div class="ttc" id="aclassField_html_a12dca5fcc8ba8bb0191101a5f40db023"><div class="ttname"><a href="classField.html#a12dca5fcc8ba8bb0191101a5f40db023">Field::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00016">robot_element/observers/field.h:16</a></div></div>
+<div class="ttc" id="aclassField_html_a3937b0953056acede15814ada1053f9a"><div class="ttname"><a href="classField.html#a3937b0953056acede15814ada1053f9a">Field::Field</a></div><div class="ttdeci">Field(tf2::Transform tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00009">impl/field.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00019">impl/abstract_robot_element.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_adcaadf1f399625d67747ce746a0cc928"><div class="ttname"><a href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00009">robot_element/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassField_html_a63a8a02d41e3e0f9eed98c5136a2216a"><div class="ttname"><a href="classField.html#a63a8a02d41e3e0f9eed98c5136a2216a">Field::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00018">robot_element/observers/field.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassField_html"><div class="ttname"><a href="classField.html">Field</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2field_8h_source.html#l00007">impl/field.h:7</a></div></div>
+<div class="ttc" id="aclassField_html_a5e927f0256af43c7f9bc45177adb6da0"><div class="ttname"><a href="classField.html#a5e927f0256af43c7f9bc45177adb6da0">Field::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00014">robot_element/observers/field.h:14</a></div></div>
+<div class="ttc" id="aclassField_html_ac76cd0ffa4b2e361dd0e9ce1fd601034"><div class="ttname"><a href="classField.html#ac76cd0ffa4b2e361dd0e9ce1fd601034">Field::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00019">robot_element/observers/field.h:19</a></div></div>
+<div class="ttc" id="aclassField_html_ae1cad38d7a84b8363bf9ab7d2de11cc2"><div class="ttname"><a href="classField.html#ae1cad38d7a84b8363bf9ab7d2de11cc2">Field::set_name</a></div><div class="ttdeci">void set_name(std::string str)</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2observers_2field_8h_source.html#l00011">robot_element/observers/field.h:11</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__reader_8cpp.html b/doc/html/robot__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..277a7081402b12d647136c985b5e0d16bb1c07a4
--- /dev/null
+++ b/doc/html/robot__reader_8cpp.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="robot__reader_8h_source.html">reader/robot_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__reader_8cpp__incl.png" border="0" usemap="#robot__reader_8cpp" alt=""/></div>
+<map name="robot__reader_8cpp" id="robot__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="196,5,328,32"/>
+<area shape="rect" href="robot__reader_8h.html" title=" " alt="" coords="181,80,343,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="robot__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__reader_8cpp__incl.map b/doc/html/robot__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4fd8599ef8073a2a441616970f290a46609d929b
--- /dev/null
+++ b/doc/html/robot__reader_8cpp__incl.map
@@ -0,0 +1,13 @@
+<map id="robot_reader.cpp" name="robot_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="196,5,328,32"/>
+<area shape="rect" id="node2" href="$robot__reader_8h.html" title=" " alt="" coords="181,80,343,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/robot__reader_8cpp__incl.md5 b/doc/html/robot__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1a2759afdc6858b3acab219c7c0be9891d8fca16
--- /dev/null
+++ b/doc/html/robot__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+1375078d868981a136c1f88f86b2a160
\ No newline at end of file
diff --git a/doc/html/robot__reader_8cpp__incl.png b/doc/html/robot__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..bf4b4cc4f6c4c8f47d61197907366545c776f11f
Binary files /dev/null and b/doc/html/robot__reader_8cpp__incl.png differ
diff --git a/doc/html/robot__reader_8cpp_source.html b/doc/html/robot__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..19e5e57d0441799b1649c2fe23f7566197d40326
--- /dev/null
+++ b/doc/html/robot__reader_8cpp_source.html
@@ -0,0 +1,82 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="robot__reader_8h.html">reader/robot_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader::read</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- ROBOT_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>, resources);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::regex rx(<span class="stringliteral">&quot;table([0-9]+)_table_top&quot;</span>);</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keywordflow">if</span>(std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Robot: description found, loading...&quot;</span>);</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;            std::stringstream ss;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1];</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;            tf2::Vector3 pos;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;            tf2::Vector3 size;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;            tf2::Quaternion rot;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;            (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;            (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ((<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>]) + size.getZ()/2) /2) :pos.setZ(0);</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;--- Robot: %s ---&quot;</span>, ss.str().c_str());</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Robot: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Robot: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;=&gt; Robot: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;            <a class="code" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a>.push_back({ss.str().c_str(), tf2::Transform(rot,pos), size});</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        }</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    }</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a2620c6e17656a19920d805e5583ea9f5"><div class="ttname"><a href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8cpp_source.html#l00003">robot_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a099c3894672f3bdfacb1e1c69f2d30a7"><div class="ttname"><a href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">Robot_reader::robot_data_</a></div><div class="ttdeci">std::vector&lt; object_data &gt; robot_data_</div><div class="ttdoc">Map of object_data to robot.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00017">robot_reader.h:17</a></div></div>
+<div class="ttc" id="arobot__reader_8h_html"><div class="ttname"><a href="robot__reader_8h.html">robot_reader.h</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__reader_8h.html b/doc/html/robot__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..e5ad58393d1fb4814501338bf240b346027255ab
--- /dev/null
+++ b/doc/html/robot__reader_8h.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">robot_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for robot_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__reader_8h__incl.png" border="0" usemap="#robot__reader_8h" alt=""/></div>
+<map name="robot__reader_8h" id="robot__reader_8h">
+<area shape="rect" title=" " alt="" coords="203,5,321,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="robot__reader_8h__dep__incl.png" border="0" usemap="#robot__reader_8hdep" alt=""/></div>
+<map name="robot__reader_8hdep" id="robot__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="675,5,792,32"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="205,80,395,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,162,173,189"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="434,80,643,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="675,155,847,196"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="719,80,852,107"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="876,80,1001,107"/>
+<area shape="rect" href="mtc2taskspace_8cpp.html" title=" " alt="" coords="1026,80,1174,107"/>
+<area shape="rect" href="robot__reader_8cpp.html" title=" " alt="" coords="1198,80,1330,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,162,402,189"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="427,162,651,189"/>
+</map>
+</div>
+</div>
+<p><a href="robot__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRobot__reader.html">Robot_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classRobot.html">Robot</a> reader.  <a href="classRobot__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/robot__reader_8h__dep__incl.map b/doc/html/robot__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..d50fe48ad8a32f2e7cd3652bdb7d7f0a14130d27
--- /dev/null
+++ b/doc/html/robot__reader_8h__dep__incl.map
@@ -0,0 +1,13 @@
+<map id="robot_reader.h" name="robot_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="675,5,792,32"/>
+<area shape="rect" id="node2" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="205,80,395,107"/>
+<area shape="rect" id="node3" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,162,173,189"/>
+<area shape="rect" id="node5" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="434,80,643,107"/>
+<area shape="rect" id="node7" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="675,155,847,196"/>
+<area shape="rect" id="node8" href="$base__routine_8cpp.html" title=" " alt="" coords="719,80,852,107"/>
+<area shape="rect" id="node9" href="$cell__routine_8cpp.html" title=" " alt="" coords="876,80,1001,107"/>
+<area shape="rect" id="node10" href="$mtc2taskspace_8cpp.html" title=" " alt="" coords="1026,80,1174,107"/>
+<area shape="rect" id="node11" href="$robot__reader_8cpp.html" title=" " alt="" coords="1198,80,1330,107"/>
+<area shape="rect" id="node4" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="198,162,402,189"/>
+<area shape="rect" id="node6" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="427,162,651,189"/>
+</map>
diff --git a/doc/html/robot__reader_8h__dep__incl.md5 b/doc/html/robot__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..8b05cbb714705374501e96094bf4b8f72c59576e
--- /dev/null
+++ b/doc/html/robot__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+9cbf9737f7bb6dee91400171527d9c14
\ No newline at end of file
diff --git a/doc/html/robot__reader_8h__dep__incl.png b/doc/html/robot__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..deda2b8eb636beb9060a8db4d56af8e386dc52f5
Binary files /dev/null and b/doc/html/robot__reader_8h__dep__incl.png differ
diff --git a/doc/html/robot__reader_8h__incl.map b/doc/html/robot__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..7e67dd3f2d2b09f336d48117497920b8f1917c9c
--- /dev/null
+++ b/doc/html/robot__reader_8h__incl.map
@@ -0,0 +1,12 @@
+<map id="robot_reader.h" name="robot_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="203,5,321,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/robot__reader_8h__incl.md5 b/doc/html/robot__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d824ec4ba89f169a0c79ef7dd02beaa6caea96da
--- /dev/null
+++ b/doc/html/robot__reader_8h__incl.md5
@@ -0,0 +1 @@
+da268ec792cf24a9a4ab6f60f9063756
\ No newline at end of file
diff --git a/doc/html/robot__reader_8h__incl.png b/doc/html/robot__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..6e7902c97651623aabe9c19eb4cd5584f12732d7
Binary files /dev/null and b/doc/html/robot__reader_8h__incl.png differ
diff --git a/doc/html/robot__reader_8h_source.html b/doc/html/robot__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c28f8344a0c0f31b01d1e946ca07cdb6f85702b2
--- /dev/null
+++ b/doc/html/robot__reader_8h_source.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: robot_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">robot_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="robot__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef ROBOT_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define ROBOT_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classRobot__reader.html">   15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classRobot__reader.html">Robot_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">   17</a></span>&#160;    std::vector&lt;object_data&gt; <a class="code" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a>; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">   25</a></span>&#160;    <a class="code" href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">read</a>();}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">   31</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">set_robot_data</a>(std::vector&lt;object_data&gt;&amp; <a class="code" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a>) {<a class="code" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a> = <a class="code" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a>;}</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">   37</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;object_data&gt; <a class="code" href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">robot_data</a>() {<span class="keywordflow">return</span> <a class="code" href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">robot_data_</a>;}</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;};</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a2620c6e17656a19920d805e5583ea9f5"><div class="ttname"><a href="classRobot__reader.html#a2620c6e17656a19920d805e5583ea9f5">Robot_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8cpp_source.html#l00003">robot_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a099c3894672f3bdfacb1e1c69f2d30a7"><div class="ttname"><a href="classRobot__reader.html#a099c3894672f3bdfacb1e1c69f2d30a7">Robot_reader::robot_data_</a></div><div class="ttdeci">std::vector&lt; object_data &gt; robot_data_</div><div class="ttdoc">Map of object_data to robot.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00017">robot_reader.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_add641d9e981e357eb921ec42161fa692"><div class="ttname"><a href="classRobot__reader.html#add641d9e981e357eb921ec42161fa692">Robot_reader::Robot_reader</a></div><div class="ttdeci">Robot_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Robot reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00025">robot_reader.h:25</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html"><div class="ttname"><a href="classRobot__reader.html">Robot_reader</a></div><div class="ttdoc">Robot reader.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00015">robot_reader.h:15</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a5679bf167d87e00d4f9ca30fdc3fc503"><div class="ttname"><a href="classRobot__reader.html#a5679bf167d87e00d4f9ca30fdc3fc503">Robot_reader::set_robot_data</a></div><div class="ttdeci">void set_robot_data(std::vector&lt; object_data &gt; &amp;robot_data)</div><div class="ttdoc">Set robot data.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00031">robot_reader.h:31</a></div></div>
+<div class="ttc" id="aclassRobot__reader_html_a8d02ccd998930e139a17ec4c7db40226"><div class="ttname"><a href="classRobot__reader.html#a8d02ccd998930e139a17ec4c7db40226">Robot_reader::robot_data</a></div><div class="ttdeci">std::vector&lt; object_data &gt; robot_data()</div><div class="ttdoc">Get robot data.</div><div class="ttdef"><b>Definition:</b> <a href="robot__reader_8h_source.html#l00037">robot_reader.h:37</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/rviz__panel_8cpp.html b/doc/html/rviz__panel_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..205dcea620e499d796ce6131956ff13605076d7b
--- /dev/null
+++ b/doc/html/rviz__panel_8cpp.html
@@ -0,0 +1,54 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: rviz_panel.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">rviz_panel.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="rviz__panel_8h_source.html">robot_element/observers/rviz_panel.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for rviz_panel.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="rviz__panel_8cpp__incl.png" border="0" usemap="#rviz__panel_8cpp" alt=""/></div>
+<map name="rviz__panel_8cpp" id="rviz__panel_8cpp">
+<area shape="rect" title=" " alt="" coords="85,5,201,32"/>
+<area shape="rect" href="rviz__panel_8h.html" title=" " alt="" coords="51,80,236,121"/>
+<area shape="rect" title=" " alt="" coords="5,348,84,375"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="51,169,236,211"/>
+<area shape="rect" title=" " alt="" coords="261,169,407,211"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="101,259,276,300"/>
+<area shape="rect" title=" " alt="" coords="108,348,307,375"/>
+</map>
+</div>
+</div>
+<p><a href="rviz__panel_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/rviz__panel_8cpp__incl.map b/doc/html/rviz__panel_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..ac0086af07d393a56a7ab7613521e449b2740f96
--- /dev/null
+++ b/doc/html/rviz__panel_8cpp__incl.map
@@ -0,0 +1,9 @@
+<map id="rviz_panel.cpp" name="rviz_panel.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="85,5,201,32"/>
+<area shape="rect" id="node2" href="$rviz__panel_8h.html" title=" " alt="" coords="51,80,236,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,348,84,375"/>
+<area shape="rect" id="node4" href="$panel_8h.html" title=" " alt="" coords="51,169,236,211"/>
+<area shape="rect" id="node7" title=" " alt="" coords="261,169,407,211"/>
+<area shape="rect" id="node5" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="101,259,276,300"/>
+<area shape="rect" id="node6" title=" " alt="" coords="108,348,307,375"/>
+</map>
diff --git a/doc/html/rviz__panel_8cpp__incl.md5 b/doc/html/rviz__panel_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0ca332d20256c618d1918ae14869f5de217523f0
--- /dev/null
+++ b/doc/html/rviz__panel_8cpp__incl.md5
@@ -0,0 +1 @@
+549f0654ae9e4f49c986250758f75232
\ No newline at end of file
diff --git a/doc/html/rviz__panel_8cpp__incl.png b/doc/html/rviz__panel_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..cfc8dd6dca135c021fe83bbc2eca91d8cdc89b23
Binary files /dev/null and b/doc/html/rviz__panel_8cpp__incl.png differ
diff --git a/doc/html/rviz__panel_8cpp_source.html b/doc/html/rviz__panel_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..998254898da8049771a2d48c78d0d8c9605dcc03
--- /dev/null
+++ b/doc/html/rviz__panel_8cpp_source.html
@@ -0,0 +1,98 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: rviz_panel.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_4cbbe425e67f14606b10f98426aa0272.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_ac0d2b250ac9afd645907a18604af17d.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">rviz_panel.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="rviz__panel_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rviz__panel_8h.html">robot_element/observers/rviz_panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">    4</a></span>&#160;<a class="code" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel::Rviz_panel</a>(std::string name, tf2::Transform tf, tf2::Vector3 size) </div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;: <a class="code" href="classPanel.html">Panel</a>(name, tf, size)</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;{</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.ns = <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.id = 1;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.x = 0;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.y = 0;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.z = 0;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.x = 0;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.y = 0;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.z = 0;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.w = 1;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.x = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX();</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.y = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY();</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.z = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getZ();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.r = 1.0;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.g = 1.0;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.b = 1.0;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.a = 1.0; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;};</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">   29</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel::update</a>(tf2::Transform&amp; tf){</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <a class="code" href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel::update</a>(tf);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.ns = <a class="code" href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">name_</a>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.id = 1;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.x = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getX();</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.y = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getY();</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.position.z = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getOrigin().getZ();</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.x = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getX();</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.y = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getY();</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.z = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getZ();</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.pose.orientation.w = <a class="code" href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">world_tf_</a>.getRotation().getW();</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.x = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getX();</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.y = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getY();</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.scale.z = <a class="code" href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">size_</a>.getZ();</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.r = 1.0;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.g = 1.0;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.b = 1.0;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>.color.a = 1.0; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__robot__element_html_ad42d8ba185583e644e00af1c2298a38d"><div class="ttname"><a href="classAbstract__robot__element.html#ad42d8ba185583e644e00af1c2298a38d">Abstract_robot_element::world_tf_</a></div><div class="ttdeci">tf2::Transform world_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00012">impl/abstract_robot_element.h:12</a></div></div>
+<div class="ttc" id="aclassPanel_html_a2a70a607d1521d4df2360891afd2106f"><div class="ttname"><a href="classPanel.html#a2a70a607d1521d4df2360891afd2106f">Panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00014">panel.h:14</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a2da4da9105d8662c0f7cb3409bb36e43"><div class="ttname"><a href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8cpp_source.html#l00029">rviz_panel.cpp:29</a></div></div>
+<div class="ttc" id="aclassPanel_html"><div class="ttname"><a href="classPanel.html">Panel</a></div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00007">panel.h:7</a></div></div>
+<div class="ttc" id="arviz__panel_8h_html"><div class="ttname"><a href="rviz__panel_8h.html">rviz_panel.h</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a9e4b8809f51ef3e8a552f557c067d3d7"><div class="ttname"><a href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel::Rviz_panel</a></div><div class="ttdeci">Rviz_panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8cpp_source.html#l00004">rviz_panel.cpp:4</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_adcaadf1f399625d67747ce746a0cc928"><div class="ttname"><a href="classAbstract__robot__element.html#adcaadf1f399625d67747ce746a0cc928">Abstract_robot_element::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00009">robot_element/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a73b2f4c7b57f4d67e2b7f6b0b440ef8d"><div class="ttname"><a href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">Rviz_panel::marker_</a></div><div class="ttdeci">visualization_msgs::Marker marker_</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00012">rviz_panel.h:12</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a432662f8ece3c1e08739bd36a4c155d6"><div class="ttname"><a href="classAbstract__robot__element.html#a432662f8ece3c1e08739bd36a4c155d6">Abstract_robot_element::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2abstract__robot__element_8h_source.html#l00012">robot_element/abstract_robot_element.h:12</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/rviz__panel_8h.html b/doc/html/rviz__panel_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..26691445497e19374d13cd2b7a1849cf2895bd7a
--- /dev/null
+++ b/doc/html/rviz__panel_8h.html
@@ -0,0 +1,75 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: rviz_panel.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">rviz_panel.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="panel_8h_source.html">robot_element/observers/panel.h</a>&quot;</code><br />
+<code>#include &quot;visualization_msgs/MarkerArray.h&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for rviz_panel.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="rviz__panel_8h__incl.png" border="0" usemap="#rviz__panel_8h" alt=""/></div>
+<map name="rviz__panel_8h" id="rviz__panel_8h">
+<area shape="rect" title=" " alt="" coords="93,5,194,32"/>
+<area shape="rect" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" href="panel_8h.html" title=" " alt="" coords="51,80,236,121"/>
+<area shape="rect" title=" " alt="" coords="261,80,407,121"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="101,169,276,211"/>
+<area shape="rect" title=" " alt="" coords="108,259,307,285"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="rviz__panel_8h__dep__incl.png" border="0" usemap="#rviz__panel_8hdep" alt=""/></div>
+<map name="rviz__panel_8hdep" id="rviz__panel_8hdep">
+<area shape="rect" title=" " alt="" coords="289,5,391,32"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" href="rviz__panel_8cpp.html" title=" " alt="" coords="378,80,494,107"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
+</div>
+</div>
+<p><a href="rviz__panel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRviz__panel.html">Rviz_panel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/rviz__panel_8h__dep__incl.map b/doc/html/rviz__panel_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4b9b25e828a5418f898d370888bbf03eceb1f8f8
--- /dev/null
+++ b/doc/html/rviz__panel_8h__dep__incl.map
@@ -0,0 +1,7 @@
+<map id="rviz_panel.h" name="rviz_panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="289,5,391,32"/>
+<area shape="rect" id="node2" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="93,80,302,107"/>
+<area shape="rect" id="node4" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="254,155,426,196"/>
+<area shape="rect" id="node5" href="$rviz__panel_8cpp.html" title=" " alt="" coords="378,80,494,107"/>
+<area shape="rect" id="node3" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="5,162,229,189"/>
+</map>
diff --git a/doc/html/rviz__panel_8h__dep__incl.md5 b/doc/html/rviz__panel_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..884401851bf067dd64f587bac2f5a298eff93e89
--- /dev/null
+++ b/doc/html/rviz__panel_8h__dep__incl.md5
@@ -0,0 +1 @@
+5724bf747bb024a1626dc2a8d5a34b76
\ No newline at end of file
diff --git a/doc/html/rviz__panel_8h__dep__incl.png b/doc/html/rviz__panel_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..24a0a7e438a06124c9968b6277a13ab9ef971088
Binary files /dev/null and b/doc/html/rviz__panel_8h__dep__incl.png differ
diff --git a/doc/html/rviz__panel_8h__incl.map b/doc/html/rviz__panel_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..dd8840e08ee256df0098cadcfcef6732abf0fe10
--- /dev/null
+++ b/doc/html/rviz__panel_8h__incl.map
@@ -0,0 +1,8 @@
+<map id="rviz_panel.h" name="rviz_panel.h">
+<area shape="rect" id="node1" title=" " alt="" coords="93,5,194,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,259,84,285"/>
+<area shape="rect" id="node3" href="$panel_8h.html" title=" " alt="" coords="51,80,236,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="261,80,407,121"/>
+<area shape="rect" id="node4" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="101,169,276,211"/>
+<area shape="rect" id="node5" title=" " alt="" coords="108,259,307,285"/>
+</map>
diff --git a/doc/html/rviz__panel_8h__incl.md5 b/doc/html/rviz__panel_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..334e60ba5de2d1e9e2d5e77e8788db25b3dec2a2
--- /dev/null
+++ b/doc/html/rviz__panel_8h__incl.md5
@@ -0,0 +1 @@
+46352a1f3c53b4d4899d27d0c7d4128a
\ No newline at end of file
diff --git a/doc/html/rviz__panel_8h__incl.png b/doc/html/rviz__panel_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..f463553dac225a52fcf7d0adcf468061e5b983a6
Binary files /dev/null and b/doc/html/rviz__panel_8h__incl.png differ
diff --git a/doc/html/rviz__panel_8h_source.html b/doc/html/rviz__panel_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9fff9311a75336a699ebf4cf78bb233b6e59e600
--- /dev/null
+++ b/doc/html/rviz__panel_8h_source.html
@@ -0,0 +1,68 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: rviz_panel.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_e1782fda4ea964ce2c8b2efbd0a26038.html">robot_element</a></li><li class="navelem"><a class="el" href="dir_fb8c633076c6fa825500b9de509aef22.html">observers</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">rviz_panel.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="rviz__panel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef RVIZ_PANEL_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define RVIZ_PANEL_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="panel_8h.html">robot_element/observers/panel.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;visualization_msgs/MarkerArray.h&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classRviz__panel.html">   10</a></span>&#160;<span class="keyword">class </span><a class="code" href="classRviz__panel.html">Rviz_panel</a>  : <span class="keyword">public</span> <a class="code" href="classPanel.html">Panel</a>{</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">   12</a></span>&#160;    visualization_msgs::Marker <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <a class="code" href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel</a>(std::string <a class="code" href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">name</a>, tf2::Transform tf, tf2::Vector3 <a class="code" href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">size</a>);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">   18</a></span>&#160;    <span class="keyword">inline</span> visualization_msgs::Marker&amp; <a class="code" href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">marker</a>() {<span class="keywordflow">return</span> <a class="code" href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">marker_</a>;}</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;};</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassPanel_html_abc3a14b055ba9004fa5ebdb34cd5e583"><div class="ttname"><a href="classPanel.html#abc3a14b055ba9004fa5ebdb34cd5e583">Panel::name</a></div><div class="ttdeci">std::string &amp; name() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00018">panel.h:18</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html"><div class="ttname"><a href="classRviz__panel.html">Rviz_panel</a></div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00010">rviz_panel.h:10</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a2da4da9105d8662c0f7cb3409bb36e43"><div class="ttname"><a href="classRviz__panel.html#a2da4da9105d8662c0f7cb3409bb36e43">Rviz_panel::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8cpp_source.html#l00029">rviz_panel.cpp:29</a></div></div>
+<div class="ttc" id="aclassPanel_html"><div class="ttname"><a href="classPanel.html">Panel</a></div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00007">panel.h:7</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_ac2665ca36d02e328703514b188a07cfc"><div class="ttname"><a href="classRviz__panel.html#ac2665ca36d02e328703514b188a07cfc">Rviz_panel::marker</a></div><div class="ttdeci">visualization_msgs::Marker &amp; marker()</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00018">rviz_panel.h:18</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a9e4b8809f51ef3e8a552f557c067d3d7"><div class="ttname"><a href="classRviz__panel.html#a9e4b8809f51ef3e8a552f557c067d3d7">Rviz_panel::Rviz_panel</a></div><div class="ttdeci">Rviz_panel(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8cpp_source.html#l00004">rviz_panel.cpp:4</a></div></div>
+<div class="ttc" id="aclassRviz__panel_html_a73b2f4c7b57f4d67e2b7f6b0b440ef8d"><div class="ttname"><a href="classRviz__panel.html#a73b2f4c7b57f4d67e2b7f6b0b440ef8d">Rviz_panel::marker_</a></div><div class="ttdeci">visualization_msgs::Marker marker_</div><div class="ttdef"><b>Definition:</b> <a href="rviz__panel_8h_source.html#l00012">rviz_panel.h:12</a></div></div>
+<div class="ttc" id="aclassPanel_html_af6a63c29e5a5573b369482528c4b4818"><div class="ttname"><a href="classPanel.html#af6a63c29e5a5573b369482528c4b4818">Panel::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size() override</div><div class="ttdef"><b>Definition:</b> <a href="panel_8h_source.html#l00019">panel.h:19</a></div></div>
+<div class="ttc" id="apanel_8h_html"><div class="ttname"><a href="panel_8h.html">panel.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base_8cpp.html b/doc/html/simple__base_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..81e4e5b36ddfc17f85f55b9a0dee343dde6e4b08
--- /dev/null
+++ b/doc/html/simple__base_8cpp.html
@@ -0,0 +1,68 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="simple__base_8h_source.html">bridge/simple_base.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base__implementation_8h_source.html">bridge/abstract_base_implementation.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for simple_base.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base_8cpp__incl.png" border="0" usemap="#simple__base_8cpp" alt=""/></div>
+<map name="simple__base_8cpp" id="simple__base_8cpp">
+<area shape="rect" title=" " alt="" coords="1078,5,1209,32"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="703,80,864,107"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="1188,229,1347,271"/>
+<area shape="rect" title=" " alt="" coords="1080,408,1159,435"/>
+<area shape="rect" title=" " alt="" coords="1389,326,1538,353"/>
+<area shape="rect" title=" " alt="" coords="459,408,657,435"/>
+<area shape="rect" title=" " alt="" coords="47,237,199,263"/>
+<area shape="rect" title=" " alt="" coords="224,237,356,263"/>
+<area shape="rect" title=" " alt="" coords="380,237,523,263"/>
+<area shape="rect" title=" " alt="" coords="1563,326,1676,353"/>
+<area shape="rect" title=" " alt="" coords="388,326,520,353"/>
+<area shape="rect" title=" " alt="" coords="239,326,312,353"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="698,155,869,181"/>
+<area shape="rect" href="map__reader_8h.html" title=" " alt="" coords="1543,155,1701,181"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="1079,155,1221,181"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="942,229,1113,271"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="700,237,867,263"/>
+<area shape="rect" title=" " alt="" coords="998,326,1057,353"/>
+<area shape="rect" title=" " alt="" coords="1081,319,1241,360"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="596,319,771,360"/>
+</map>
+</div>
+</div>
+<p><a href="simple__base_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base_8cpp__incl.map b/doc/html/simple__base_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..39a438989cc75d90a526f69b772e89f9d700232b
--- /dev/null
+++ b/doc/html/simple__base_8cpp__incl.map
@@ -0,0 +1,22 @@
+<map id="simple_base.cpp" name="simple_base.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="1078,5,1209,32"/>
+<area shape="rect" id="node2" href="$simple__base_8h.html" title=" " alt="" coords="703,80,864,107"/>
+<area shape="rect" id="node18" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="1188,229,1347,271"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1080,408,1159,435"/>
+<area shape="rect" id="node4" title=" " alt="" coords="1389,326,1538,353"/>
+<area shape="rect" id="node5" title=" " alt="" coords="459,408,657,435"/>
+<area shape="rect" id="node6" title=" " alt="" coords="47,237,199,263"/>
+<area shape="rect" id="node7" title=" " alt="" coords="224,237,356,263"/>
+<area shape="rect" id="node8" title=" " alt="" coords="380,237,523,263"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1563,326,1676,353"/>
+<area shape="rect" id="node10" title=" " alt="" coords="388,326,520,353"/>
+<area shape="rect" id="node11" title=" " alt="" coords="239,326,312,353"/>
+<area shape="rect" id="node12" href="$abstract__base_8h.html" title=" " alt="" coords="698,155,869,181"/>
+<area shape="rect" id="node19" href="$map__reader_8h.html" title=" " alt="" coords="1543,155,1701,181"/>
+<area shape="rect" id="node20" href="$ts__reader_8h.html" title=" " alt="" coords="1079,155,1221,181"/>
+<area shape="rect" id="node13" href="$abstract__param__reader_8h.html" title=" " alt="" coords="942,229,1113,271"/>
+<area shape="rect" id="node16" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="700,237,867,263"/>
+<area shape="rect" id="node14" title=" " alt="" coords="998,326,1057,353"/>
+<area shape="rect" id="node15" title=" " alt="" coords="1081,319,1241,360"/>
+<area shape="rect" id="node17" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="596,319,771,360"/>
+</map>
diff --git a/doc/html/simple__base_8cpp__incl.md5 b/doc/html/simple__base_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..d206d8ce88a6fd9e04c99f76dc5b739d6e51f2c1
--- /dev/null
+++ b/doc/html/simple__base_8cpp__incl.md5
@@ -0,0 +1 @@
+c78d71df2812044b7121f11718292833
\ No newline at end of file
diff --git a/doc/html/simple__base_8cpp__incl.png b/doc/html/simple__base_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..983d6cdb3ed678a12a4fa53526747c8c1d50c2e2
Binary files /dev/null and b/doc/html/simple__base_8cpp__incl.png differ
diff --git a/doc/html/simple__base_8cpp_source.html b/doc/html/simple__base_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b25f7fbb7a014ee3728e7cd97d39db017afe80a8
--- /dev/null
+++ b/doc/html/simple__base_8cpp_source.html
@@ -0,0 +1,419 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="simple__base_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="simple__base_8h.html">bridge/simple_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base__implementation_8h.html">bridge/abstract_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">    4</a></span>&#160;<a class="code" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base::Simple_base</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d)</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    : <a class="code" href="classAbstract__base.html">Abstract_base</a>(d)</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    , task_space_reader_(std::make_unique&lt;<a class="code" href="classTs__reader.html">Ts_reader</a>&gt;(d))</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    , map_reader_(std::make_unique&lt;<a class="code" href="classMap__reader.html">Map_reader</a>&gt;(d))</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    {</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;        <a class="code" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a>= <a class="code" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">map_reader_</a>-&gt;map_data();</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;=&gt; RM is known&quot;</span>);</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; s_vod:<a class="code" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">task_space_reader_</a>-&gt;drop_off_data()){</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            std::vector&lt;std::pair&lt;object_data, std::vector&lt;tf2::Quaternion&gt;&gt;&gt; vod_q;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;            <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; od: s_vod.second) vod_q.push_back(std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>, std::vector&lt;tf2::Quaternion&gt;&gt;(od, std::vector&lt;tf2::Quaternion&gt;()));</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;            <a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a>.insert(std::pair&lt; <span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>, std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;(s_vod.first,vod_q));</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        }</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        ROS_INFO(<span class="stringliteral">&quot;=&gt; TS is known&quot;</span>);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    }</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">   20</a></span>&#160;std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base::base_calculation</a>(){</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <a class="code" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a>-&gt;set_grasp_orientations(<a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a>);</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; grasp rotations from implenentation object set&quot;</span>);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <a class="code" href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">implementation_</a>-&gt;inv_map_creation(<a class="code" href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">map_</a>, <a class="code" href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">inv_map_</a>, <a class="code" href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">task_space_</a>);</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; inverse map is set...&quot;</span>);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; resulting;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <span class="keywordflow">return</span> resulting;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">    ROS_INFO(&quot;init voxel...&quot;);</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">    std::vector&lt;pcl::PointXYZ&gt; voxelization = this-&gt;create_pcl_box();</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">    std::vector&lt;std::vector&lt;std::vector&lt;int&gt;&gt;&gt; base_target_map;</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment">    base_target_map.resize(task_grasps_.size());</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">    for(long unsigned int i = 0; i &lt; base_target_map.size();i++) base_target_map[i].resize(voxelization.size());</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">    ROS_INFO(&quot;forming base clouds...&quot;);</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">    strategy_-&gt;cloud_calculation(this);</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">    // OpenMP </span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">    ROS_INFO(&quot;start cloud quantization...&quot;);</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">    for(long unsigned int i = 0; i &lt; target_cloud_.size();i++){</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">        for(long unsigned int j = 0; j &lt; target_cloud_[i].size();j++){</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">            pcl::octree::OctreePointCloudSearch&lt;pcl::PointXYZ&gt; octree(0.2f);</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">            octree.setInputCloud(target_cloud_[i][j]);</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">            octree.addPointsFromInputCloud();</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">            double min_x, min_y, min_z, max_x, max_y, max_z;</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">            octree.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">            for(long unsigned int k = 0; k &lt; voxelization.size(); k++) {</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">                pcl::PointXYZ p = voxelization[k];</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">                bool isInBox = (p.x &gt;= min_x &amp;&amp; p.x &lt;= max_x) &amp;&amp; (p.y &gt;= min_y &amp;&amp; p.y &lt;= max_y) &amp;&amp; (p.z &gt;= min_z &amp;&amp; p.z &lt;= max_z);</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">                if(isInBox &amp;&amp; octree.isVoxelOccupiedAtPoint(p)) {</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">                    std::vector&lt; int &gt; pointIdxVec;</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">                    if(octree.voxelSearch(p, pointIdxVec)) if(!pointIdxVec.empty()) base_target_map[i][k].push_back(j);</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">    std::vector&lt;std::vector&lt;pcl::PointXYZ&gt;&gt; resulting;</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">    for(long unsigned int i = 0; i &lt; base_target_map.size(); i++) {</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">        std::vector&lt;pcl::PointXYZ&gt; points_per_robot;</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">        for(int j = 0; j &lt; base_target_map[i].size(); j++){</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">            if (base_target_map[i][j].size() == task_grasps_[i].size()) {</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">                points_per_robot.push_back(voxelization[j]);</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">        if (!points_per_robot.empty()) resulting.push_back(points_per_robot);</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">    for (long unsigned int i = 0; i &lt; resulting.size(); i++) {</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">        ROS_INFO(&quot;Robot %li got %li base positions to ckeck&quot;, i, resulting[i].size());</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">    return resulting;</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">}</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="comment">std::vector&lt;pcl::PointXYZ&gt; Abstract_map_loader::create_pcl_box(){</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">    tf2::Vector3 origin(0,0,0);</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">    float resolution = 0.4f;</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">    float diameter = 3.0f;</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="comment">    unsigned char depth = 16;</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">    std::vector&lt;pcl::PointXYZ&gt; box; </span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment">    octomap::OcTree* tree = new octomap::OcTree(resolution/2);</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment">    for (float x = origin.getX() - diameter * 5 ; x &lt;= origin.getX() + diameter * 5 ; x += resolution){</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="comment">        for (float y = origin.getY() - diameter * 5 ; y &lt;= origin.getY() + diameter * 5 ; y += resolution){</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">            for (float z = origin.getZ() - diameter * 1.5 ; z &lt;= origin.getZ() + diameter * 1.5 ; z += resolution){</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment">                octomap::point3d point(x,y,z);</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment">                tree-&gt;updateNode(point, true);</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="comment">    for (octomap::OcTree::leaf_iterator it = tree-&gt;begin_leafs(depth), end = tree-&gt;end_leafs(); it != end; ++it){</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment">        pcl::PointXYZ searchPoint(it.getCoordinate().x(), it.getCoordinate().y(), it.getCoordinate().z());</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment">        box.push_back(searchPoint);</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">    return box;</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">}</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="comment">void Map_loader::write_task(Abstract_robot* robot){</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">    std::ofstream o(ros::package::getPath(&quot;multi_cell_builder&quot;) + &quot;/mtc_task_file/dummy.yaml&quot;);</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment">    tf2::Transform target_start = task_grasps_[0].front();</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="comment">    tf2::Transform target_end = task_grasps_[0].back();</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="comment">    float x, y, z;</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">    x = target_end.getOrigin().getX();</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">    y = target_end.getOrigin().getY();</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="comment">    z = target_end.getOrigin().getZ();</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">    std::stringstream ss;</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">    ss &lt;&lt; &quot;hand_&quot; &lt;&lt; robot-&gt;name().back();</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">    std::string hand = ss.str();</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">    std::stringstream sss;</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">    sss &lt;&lt; &quot;panda_&quot; &lt;&lt; robot-&gt;name().back() &lt;&lt; &quot;_link8&quot;;</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">    std::string last_link = sss.str();</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">    YAML::Node node;</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="comment">    //YAML::Comment(&quot;yaml-language-server: $schema=/home/matteo/reachability/src/yaml_to_mtc/config/yaml_to_mtc_schema.json&quot;);</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="comment">    YAML::Node planner_node;</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="comment">    planner_node[&quot;id&quot;] = &quot;cartesian&quot;;</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">    planner_node[&quot;type&quot;] = &quot;CartesianPath&quot;;</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment">    node[&quot;planners&quot;].push_back(planner_node);</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">    planner_node.reset();</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">    planner_node[&quot;id&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment">    planner_node[&quot;type&quot;] = &quot;PipelinePlanner&quot;;</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">    planner_node[&quot;properties&quot;][&quot;step_size&quot;] = 0.005f;</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">    planner_node[&quot;properties&quot;][&quot;goal_joint_tolerance&quot;] = static_cast&lt;double&gt;(0.00001f);</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">    node[&quot;planners&quot;].push_back(planner_node);</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">    planner_node.reset();</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">    planner_node[&quot;id&quot;] = &quot;interpolation&quot;;</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">    planner_node[&quot;type&quot;] = &quot;JointInterpolationPlanner&quot;;</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">    node[&quot;planners&quot;].push_back(planner_node);</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment">    planner_node.reset();</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;name&quot;] = &quot;Pick and Place test&quot;;</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;properties&quot;][&quot;group&quot;] = robot-&gt;name();</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;properties&quot;][&quot;eef&quot;] = hand;</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;properties&quot;][&quot;hand_grasping_frame&quot;] = last_link;</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;properties&quot;][&quot;ik_frame&quot;] = last_link;</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;properties&quot;][&quot;hand&quot;] = hand;</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">    YAML::Node stage;</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">    stage[&quot;name&quot;] = &quot;current&quot;;</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;CurrentState&quot;;</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="comment">    stage[&quot;name&quot;] = &quot;move to ready&quot;;</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;MoveTo&quot;;   </span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">    stage[&quot;id&quot;] = &quot;ready&quot;;   </span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment">    stage[&quot;planner&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;].push_back(&quot;group&quot;);</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment">    stage[&quot;set&quot;][&quot;goal&quot;] = &quot;ready&quot;;</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;MoveTo&quot;;   </span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">    stage[&quot;planner&quot;] = &quot;sampling&quot;;  </span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">    stage[&quot;id&quot;] = &quot;hand_open&quot;;  </span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="comment">    stage[&quot;properties&quot;][&quot;group&quot;] = hand; </span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;<span class="comment">    stage[&quot;set&quot;][&quot;goal&quot;] = &quot;open&quot;;  </span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;Connect&quot;;   </span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">    stage[&quot;group_planner_vector&quot;][robot-&gt;name()] = &quot;sampling&quot;; </span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;; </span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;SerialContainer&quot;;</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;<span class="comment">    stage[&quot;name&quot;] = &quot;grasp&quot;;</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="comment">    stage[&quot;properties_exposeTo&quot;][&quot;source&quot;] = &quot;task&quot;;</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;<span class="comment">    stage[&quot;properties_exposeTo&quot;][&quot;values&quot;] = YAML::Load(&quot;[eef, hand, group, ik_frame]&quot;);</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;] = YAML::Load(&quot;[eef, hand, group, ik_frame]&quot;);</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;<span class="comment">    //node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="comment">    YAML::Node stage_in_stage;</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveRelative&quot;;</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;cartesian&quot;;</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;min_distance&quot;] = 0.07f;</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;max_distance&quot;] = 0.2f;</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;] = YAML::Load(&quot;[group]&quot;);</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;direction&quot;][&quot;vector&quot;] = YAML::Load(&quot;{x: 0.0, y: 0.0, z: 1.0, header: { frame_id: &quot; + last_link +&quot; }}&quot;);</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;<span class="comment">    stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;ComputeIK&quot;;</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;] = YAML::Load(&quot;{max_ik_solutions: 5}&quot;);</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;isometry&quot;][&quot;translation&quot;] = YAML::Load(&quot;{ x: 0.1, y: 0.0, z: 0.0 }&quot;);</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;isometry&quot;][&quot;quaternion&quot;] = YAML::Load(&quot;{ r: 1.571, p: 0.785, y: 1.571 }&quot;);</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="comment">    YAML::Node properties_in_stage_in_stage;</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;source&quot;]= &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;values&quot;]= YAML::Load(&quot;[eef, group]&quot;);</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;].push_back(properties_in_stage_in_stage);</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="comment">    properties_in_stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;source&quot;]= &quot;INTERFACE&quot;;</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;values&quot;]= YAML::Load(&quot;[target_pose]&quot;);</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;].push_back(properties_in_stage_in_stage);</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="comment">    properties_in_stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;type&quot;] = &quot;GenerateGraspPose&quot;;</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;properties&quot;][&quot;object&quot;] = &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;properties&quot;][&quot;angle_delta&quot;] = 1.571f;</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;properties&quot;][&quot;pregrasp&quot;] = &quot;open&quot;;</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;set&quot;][&quot;monitored_stage&quot;] = &quot;ready&quot;;</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="comment">    stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;ModifyPlanningScene&quot;;</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;first&quot;] = &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;second&quot;][&quot;joint_model_group_name&quot;] = hand;</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;allow&quot;] = true;</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="comment">    stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveTo&quot;;</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;group&quot;] = hand;</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;goal&quot;] = &quot;close&quot;;</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="comment">    stage_in_stage.reset();   </span></div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;ModifyPlanningScene&quot;;</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;attach_object&quot;][&quot;object&quot;] = &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;attach_object&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="comment">    stage_in_stage.reset();  </span></div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveRelative&quot;;</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;cartesian&quot;;</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;<span class="comment">    stage_in_stage[&quot;id&quot;] = &quot;pick_up&quot;;</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;] = YAML::Load(&quot;[group]&quot;);</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;min_distance&quot;] = 0.1f;</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;max_distance&quot;] = 0.2f;</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;direction&quot;][&quot;vector&quot;] = YAML::Load(&quot;{ x: 0.0, y: 0.0, z: 1.0 }&quot;);</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="comment">    stage_in_stage.reset();  </span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;Connect&quot;;</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;<span class="comment">    stage[&quot;group_planner_vector&quot;][robot-&gt;name()] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="comment">    stage.reset();</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="comment">    // satrtet here </span></div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="comment">    stage[&quot;type&quot;] = &quot;SerialContainer&quot;;</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="comment">    stage[&quot;name&quot;] = &quot;place&quot;;</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="comment">    stage[&quot;properties_exposeTo&quot;][&quot;source&quot;] = &quot;task&quot;;</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="comment">    stage[&quot;properties_exposeTo&quot;][&quot;values&quot;] = YAML::Load(&quot;[eef, hand, group, ik_frame]&quot;);</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="comment">    stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveRelative&quot;;</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;cartesian&quot;;</span></div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;min_distance&quot;] = 0.1f;</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;max_distance&quot;] = 0.2f;</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;] = YAML::Load(&quot;[group]&quot;);</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;direction&quot;][&quot;vector&quot;] = YAML::Load(&quot;{ x: 0.0, y: 0.0, z: -1.0}&quot;);</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="comment">    stage_in_stage.reset(); </span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;ComputeIK&quot;;</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;] = YAML::Load(&quot;{ max_ik_solutions: 5 }&quot;);</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;isometry&quot;][&quot;translation&quot;] = YAML::Load(&quot;{ x: 0.1, y: 0.0, z: 0.0 }&quot;);</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;isometry&quot;][&quot;quaternion&quot;] = YAML::Load(&quot;{ r: 1.571, p: 0.785, y: 1.571 }&quot;);</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;ik_frame&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;source&quot;]= &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;values&quot;]= YAML::Load(&quot;[eef, group]&quot;);</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;].push_back(properties_in_stage_in_stage);</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="comment">    properties_in_stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;source&quot;]= &quot;INTERFACE&quot;;</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;<span class="comment">    properties_in_stage_in_stage[&quot;values&quot;]= YAML::Load(&quot;[target_pose]&quot;);</span></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;].push_back(properties_in_stage_in_stage);</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="comment">    properties_in_stage_in_stage.reset();</span></div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;type&quot;] = &quot;GeneratePose&quot;;</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;set&quot;][&quot;monitored_stage&quot;] = &quot;pick_up&quot;;</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;set&quot;][&quot;pose&quot;][&quot;point&quot;] = YAML::Load(&quot;{ x: &quot; + std::to_string(x) + &quot;, y: &quot; + std::to_string(y) + &quot;, z: 0.9305 }&quot;); // Hier objekt</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="comment">    stage_in_stage[&quot;stage&quot;][&quot;set&quot;][&quot;pose&quot;][&quot;orientation&quot;] = YAML::Load(&quot;{ x: 0.0, y: 0.0, z: 0.0, w: 1.0}&quot;);</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="comment">    stage_in_stage.reset(); </span></div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveTo&quot;;</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;group&quot;] = hand;</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;goal&quot;] = &quot;open&quot;;</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="comment">    stage_in_stage.reset(); </span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;ModifyPlanningScene&quot;;</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;detach_object&quot;][&quot;object&quot;]= &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;detach_object&quot;][&quot;link&quot;]= last_link;</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;first&quot;]= &quot;bottle&quot;;</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;second&quot;][&quot;joint_model_group_name&quot;]= hand;</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;allow_collisions&quot;][&quot;allow&quot;] = false;</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;<span class="comment">    stage_in_stage.reset(); </span></div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveRelative&quot;;</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;cartesian&quot;;</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;link&quot;] = last_link;</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;min_distance&quot;] = 0.07f;</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;max_distance&quot;] = 0.2f;</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;] = &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;] = YAML::Load(&quot;[group]&quot;);</span></div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;direction&quot;][&quot;vector&quot;] = YAML::Load(&quot;{x: 0.0, y: 0.0, z: -1.0, header:  { frame_id: &quot; + last_link+ &quot; }}&quot;);</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="comment">    stage_in_stage.reset(); </span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveTo&quot;;</span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="comment">    stage_in_stage[&quot;properties&quot;][&quot;group&quot;] = hand;</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;goal&quot;] = &quot;close&quot;;</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="comment">    stage_in_stage.reset();    </span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;<span class="comment">    stage_in_stage[&quot;name&quot;] = &quot;move to ready&quot;;</span></div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;<span class="comment">    stage_in_stage[&quot;type&quot;] = &quot;MoveTo&quot;;</span></div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="comment">    stage_in_stage[&quot;planner&quot;] = &quot;sampling&quot;;</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;source&quot;]= &quot;PARENT&quot;;</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;<span class="comment">    stage_in_stage[&quot;propertiesConfigureInitFrom&quot;][&quot;values&quot;].push_back(&quot;group&quot;);</span></div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;<span class="comment">    stage_in_stage[&quot;set&quot;][&quot;goal&quot;] = &quot;ready&quot;;</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;<span class="comment">    stage[&quot;stages&quot;].push_back(stage_in_stage);</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="comment">    stage_in_stage.reset();    </span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="comment">    node[&quot;task&quot;][&quot;stages&quot;].push_back(stage);</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="comment">    stage.reset();  </span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="comment">    node[&quot;max_planning_solutions&quot;] = 10;</span></div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;<span class="comment">    o &lt;&lt; node;</span></div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="comment">    o.close();</span></div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;}</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160; </div>
+<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">  366</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base::write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* r){}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__base_html_a8c32441b38f2cb24388e8d98fd8fe2bc"><div class="ttname"><a href="classAbstract__base.html#a8c32441b38f2cb24388e8d98fd8fe2bc">Abstract_base::task_space_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt; &gt; &gt; &gt; task_space_</div><div class="ttdoc">Drop-off locations with their grasp orientations, mapped to a robot.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00035">abstract_base.h:35</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a589f01126eab356919d97480e30b17ab"><div class="ttname"><a href="classAbstract__base.html#a589f01126eab356919d97480e30b17ab">Abstract_base::map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; map_</div><div class="ttdoc">Reachability map structure of a robot.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00033">abstract_base.h:33</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a095701db18bbccae201b96121b962e81"><div class="ttname"><a href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base::write_task</a></div><div class="ttdeci">void write_task(Abstract_robot *robot) override</div><div class="ttdoc">write trask</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00366">simple_base.cpp:366</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html"><div class="ttname"><a href="classAbstract__base.html">Abstract_base</a></div><div class="ttdoc">Abstract base class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00029">abstract_base.h:29</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a81f95918750e1644484cbce9f41fd24e"><div class="ttname"><a href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base::Simple_base</a></div><div class="ttdeci">Simple_base(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Simple base constructor.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00004">simple_base.cpp:4</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="aclassMap__reader_html"><div class="ttname"><a href="classMap__reader.html">Map_reader</a></div><div class="ttdoc">Map reader.</div><div class="ttdef"><b>Definition:</b> <a href="map__reader_8h_source.html#l00015">map_reader.h:15</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a42768a7c6fcee691bb1699e08ead3ef6"><div class="ttname"><a href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base::base_calculation</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation() override</div><div class="ttdoc">refined Template methode</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00020">simple_base.cpp:20</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_ab73fdbf60e0d79d8ba4eeca3a894e39e"><div class="ttname"><a href="classAbstract__base.html#ab73fdbf60e0d79d8ba4eeca3a894e39e">Abstract_base::implementation_</a></div><div class="ttdeci">std::shared_ptr&lt; Abstract_base_implementation &gt; implementation_</div><div class="ttdoc">refined implementation</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00038">abstract_base.h:38</a></div></div>
+<div class="ttc" id="aclassTs__reader_html"><div class="ttname"><a href="classTs__reader.html">Ts_reader</a></div><div class="ttdoc">TS reader.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00015">ts_reader.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html_a9b80b83e10a75f0421594e46c9b49381"><div class="ttname"><a href="classAbstract__base.html#a9b80b83e10a75f0421594e46c9b49381">Abstract_base::inv_map_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; inv_map_</div><div class="ttdoc">Inversion of reachability map structure.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00034">abstract_base.h:34</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a0eceb0eb9276b9289bfa10c88254ce7e"><div class="ttname"><a href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">Simple_base::task_space_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Ts_reader &gt; task_space_reader_</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8h_source.html#l00028">simple_base.h:28</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_aca05b7bb4f422425e21872198598b6c5"><div class="ttname"><a href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">Simple_base::map_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Map_reader &gt; map_reader_</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8h_source.html#l00029">simple_base.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+<div class="ttc" id="asimple__base_8h_html"><div class="ttname"><a href="simple__base_8h.html">simple_base.h</a></div></div>
+<div class="ttc" id="aabstract__base__implementation_8h_html"><div class="ttname"><a href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base_8h.html b/doc/html/simple__base_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea62715265b8e01eb8a2ec4bdd6e1c62f7692f4d
--- /dev/null
+++ b/doc/html/simple__base_8h.html
@@ -0,0 +1,96 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">simple_base.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &lt;tf2/LinearMath/Transform.h&gt;</code><br />
+<code>#include &quot;octomap/octomap.h&quot;</code><br />
+<code>#include &lt;pcl/point_cloud.h&gt;</code><br />
+<code>#include &lt;pcl/octree/octree.h&gt;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;yaml-cpp/yaml.h&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base_8h_source.html">bridge/abstract_base.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="map__reader_8h_source.html">reader/map_reader.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="ts__reader_8h_source.html">reader/ts_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for simple_base.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base_8h__incl.png" border="0" usemap="#simple__base_8h" alt=""/></div>
+<map name="simple__base_8h" id="simple__base_8h">
+<area shape="rect" title=" " alt="" coords="962,5,1078,32"/>
+<area shape="rect" title=" " alt="" coords="1037,333,1115,360"/>
+<area shape="rect" title=" " alt="" coords="1585,251,1735,278"/>
+<area shape="rect" title=" " alt="" coords="521,333,719,360"/>
+<area shape="rect" title=" " alt="" coords="39,162,191,189"/>
+<area shape="rect" title=" " alt="" coords="215,162,347,189"/>
+<area shape="rect" title=" " alt="" coords="371,162,514,189"/>
+<area shape="rect" title=" " alt="" coords="1759,251,1873,278"/>
+<area shape="rect" title=" " alt="" coords="1010,251,1142,278"/>
+<area shape="rect" title=" " alt="" coords="509,251,582,278"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="825,80,996,107"/>
+<area shape="rect" href="map__reader_8h.html" title=" " alt="" coords="1615,80,1774,107"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="1232,80,1373,107"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="1217,155,1388,196"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="641,162,807,189"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="831,155,990,196"/>
+<area shape="rect" title=" " alt="" coords="1319,251,1377,278"/>
+<area shape="rect" title=" " alt="" coords="1401,244,1561,285"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="658,244,833,285"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base_8h__dep__incl.png" border="0" usemap="#simple__base_8hdep" alt=""/></div>
+<map name="simple__base_8hdep" id="simple__base_8hdep">
+<area shape="rect" title=" " alt="" coords="101,5,217,32"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="5,87,136,114"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="161,80,333,121"/>
+</map>
+</div>
+</div>
+<p><a href="simple__base_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base.html">Simple_base</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">refiend base abstraction  <a href="classSimple__base.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base_8h__dep__incl.map b/doc/html/simple__base_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b0e0b0c18a0ec8ac30e1447bb834eb14002c5da9
--- /dev/null
+++ b/doc/html/simple__base_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="simple_base.h" name="simple_base.h">
+<area shape="rect" id="node1" title=" " alt="" coords="101,5,217,32"/>
+<area shape="rect" id="node2" href="$simple__base_8cpp.html" title=" " alt="" coords="5,87,136,114"/>
+<area shape="rect" id="node3" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="161,80,333,121"/>
+</map>
diff --git a/doc/html/simple__base_8h__dep__incl.md5 b/doc/html/simple__base_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..a66531f7c6046f2f3a8f843f7415891788898151
--- /dev/null
+++ b/doc/html/simple__base_8h__dep__incl.md5
@@ -0,0 +1 @@
+dad6397a669bf7905073e3f982022e2d
\ No newline at end of file
diff --git a/doc/html/simple__base_8h__dep__incl.png b/doc/html/simple__base_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..673521001922fa61d30a94fe595614b92a042b88
Binary files /dev/null and b/doc/html/simple__base_8h__dep__incl.png differ
diff --git a/doc/html/simple__base_8h__incl.map b/doc/html/simple__base_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..28ad6c185090333d7a5e68bc31629504f9f06b82
--- /dev/null
+++ b/doc/html/simple__base_8h__incl.map
@@ -0,0 +1,21 @@
+<map id="simple_base.h" name="simple_base.h">
+<area shape="rect" id="node1" title=" " alt="" coords="962,5,1078,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="1037,333,1115,360"/>
+<area shape="rect" id="node3" title=" " alt="" coords="1585,251,1735,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="521,333,719,360"/>
+<area shape="rect" id="node5" title=" " alt="" coords="39,162,191,189"/>
+<area shape="rect" id="node6" title=" " alt="" coords="215,162,347,189"/>
+<area shape="rect" id="node7" title=" " alt="" coords="371,162,514,189"/>
+<area shape="rect" id="node8" title=" " alt="" coords="1759,251,1873,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1010,251,1142,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="509,251,582,278"/>
+<area shape="rect" id="node11" href="$abstract__base_8h.html" title=" " alt="" coords="825,80,996,107"/>
+<area shape="rect" id="node18" href="$map__reader_8h.html" title=" " alt="" coords="1615,80,1774,107"/>
+<area shape="rect" id="node19" href="$ts__reader_8h.html" title=" " alt="" coords="1232,80,1373,107"/>
+<area shape="rect" id="node12" href="$abstract__param__reader_8h.html" title=" " alt="" coords="1217,155,1388,196"/>
+<area shape="rect" id="node15" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="641,162,807,189"/>
+<area shape="rect" id="node17" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="831,155,990,196"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1319,251,1377,278"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1401,244,1561,285"/>
+<area shape="rect" id="node16" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="658,244,833,285"/>
+</map>
diff --git a/doc/html/simple__base_8h__incl.md5 b/doc/html/simple__base_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1628d605c57574246f339e915a026e65398c4fff
--- /dev/null
+++ b/doc/html/simple__base_8h__incl.md5
@@ -0,0 +1 @@
+1f8c5050f922d8c8b1f65b2a23bf3ab7
\ No newline at end of file
diff --git a/doc/html/simple__base_8h__incl.png b/doc/html/simple__base_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..521e3aa4bc276cf61da927d943987362f4c4121b
Binary files /dev/null and b/doc/html/simple__base_8h__incl.png differ
diff --git a/doc/html/simple__base_8h_source.html b/doc/html/simple__base_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6aaaa989a4ae9bff4f1337c3dada7e390f3a68b1
--- /dev/null
+++ b/doc/html/simple__base_8h_source.html
@@ -0,0 +1,84 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="simple__base_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef SIMPLE_BASE_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define SIMPLE_BASE_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;tf2/LinearMath/Transform.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;octomap/octomap.h&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;pcl/octree/octree.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;yaml-cpp/yaml.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base_8h.html">bridge/abstract_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="map__reader_8h.html">reader/map_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ts__reader_8h.html">reader/ts_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classSimple__base.html">   26</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSimple__base.html">Simple_base</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__base.html">Abstract_base</a> {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">   28</a></span>&#160;    std::unique_ptr&lt;Ts_reader&gt; <a class="code" href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">task_space_reader_</a>;  </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">   29</a></span>&#160;    std::unique_ptr&lt;Map_reader&gt; <a class="code" href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">map_reader_</a>; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    std::map&lt;const std::string, std::vector&lt;pcl::PointXYZ&gt;&gt; <a class="code" href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">base_calculation</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classSimple__base.html#a095701db18bbccae201b96121b962e81">write_task</a>(<a class="code" href="classAbstract__robot.html">Abstract_robot</a>* robot) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160; </div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;};</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="amap__reader_8h_html"><div class="ttname"><a href="map__reader_8h.html">map_reader.h</a></div></div>
+<div class="ttc" id="aabstract__base_8h_html"><div class="ttname"><a href="abstract__base_8h.html">abstract_base.h</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a095701db18bbccae201b96121b962e81"><div class="ttname"><a href="classSimple__base.html#a095701db18bbccae201b96121b962e81">Simple_base::write_task</a></div><div class="ttdeci">void write_task(Abstract_robot *robot) override</div><div class="ttdoc">write trask</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00366">simple_base.cpp:366</a></div></div>
+<div class="ttc" id="aclassAbstract__base_html"><div class="ttname"><a href="classAbstract__base.html">Abstract_base</a></div><div class="ttdoc">Abstract base class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base_8h_source.html#l00029">abstract_base.h:29</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a81f95918750e1644484cbce9f41fd24e"><div class="ttname"><a href="classSimple__base.html#a81f95918750e1644484cbce9f41fd24e">Simple_base::Simple_base</a></div><div class="ttdeci">Simple_base(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Simple base constructor.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00004">simple_base.cpp:4</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a42768a7c6fcee691bb1699e08ead3ef6"><div class="ttname"><a href="classSimple__base.html#a42768a7c6fcee691bb1699e08ead3ef6">Simple_base::base_calculation</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; pcl::PointXYZ &gt; &gt; base_calculation() override</div><div class="ttdoc">refined Template methode</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8cpp_source.html#l00020">simple_base.cpp:20</a></div></div>
+<div class="ttc" id="ats__reader_8h_html"><div class="ttname"><a href="ts__reader_8h.html">ts_reader.h</a></div></div>
+<div class="ttc" id="aclassSimple__base_html"><div class="ttname"><a href="classSimple__base.html">Simple_base</a></div><div class="ttdoc">refiend base abstraction</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8h_source.html#l00026">simple_base.h:26</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_a0eceb0eb9276b9289bfa10c88254ce7e"><div class="ttname"><a href="classSimple__base.html#a0eceb0eb9276b9289bfa10c88254ce7e">Simple_base::task_space_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Ts_reader &gt; task_space_reader_</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8h_source.html#l00028">simple_base.h:28</a></div></div>
+<div class="ttc" id="aclassSimple__base_html_aca05b7bb4f422425e21872198598b6c5"><div class="ttname"><a href="classSimple__base.html#aca05b7bb4f422425e21872198598b6c5">Simple_base::map_reader_</a></div><div class="ttdeci">std::unique_ptr&lt; Map_reader &gt; map_reader_</div><div class="ttdef"><b>Definition:</b> <a href="simple__base_8h_source.html#l00029">simple_base.h:29</a></div></div>
+<div class="ttc" id="aclassAbstract__robot_html"><div class="ttname"><a href="classAbstract__robot.html">Abstract_robot</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot_8h_source.html#l00025">impl/abstract_robot.h:25</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base__implementation_8cpp.html b/doc/html/simple__base__implementation_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..e029a3c176a720b645088bc053aec0eaecbff501
--- /dev/null
+++ b/doc/html/simple__base__implementation_8cpp.html
@@ -0,0 +1,65 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base_implementation.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base_implementation.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="simple__base__implementation_8h_source.html">bridge/simple_base_implementation.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for simple_base_implementation.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base__implementation_8cpp__incl.png" border="0" usemap="#simple__base__implementation_8cpp" alt=""/></div>
+<map name="simple__base__implementation_8cpp" id="simple__base__implementation_8cpp">
+<area shape="rect" title=" " alt="" coords="381,5,624,32"/>
+<area shape="rect" href="simple__base__implementation_8h.html" title=" " alt="" coords="428,80,577,121"/>
+<area shape="rect" title=" " alt="" coords="341,512,419,539"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="423,169,582,211"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="535,259,705,285"/>
+<area shape="rect" title=" " alt="" coords="144,430,293,457"/>
+<area shape="rect" title=" " alt="" coords="1181,512,1379,539"/>
+<area shape="rect" title=" " alt="" coords="708,341,860,367"/>
+<area shape="rect" title=" " alt="" coords="885,341,1017,367"/>
+<area shape="rect" title=" " alt="" coords="1041,341,1183,367"/>
+<area shape="rect" title=" " alt="" coords="318,430,431,457"/>
+<area shape="rect" title=" " alt="" coords="825,430,957,457"/>
+<area shape="rect" title=" " alt="" coords="981,430,1054,457"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="412,333,583,375"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="1207,341,1374,367"/>
+<area shape="rect" title=" " alt="" coords="691,430,749,457"/>
+<area shape="rect" title=" " alt="" coords="456,423,616,464"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1130,423,1305,464"/>
+</map>
+</div>
+</div>
+<p><a href="simple__base__implementation_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base__implementation_8cpp__incl.map b/doc/html/simple__base__implementation_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4d7ea22f7a4b2c0ff5509dcc34713d74c445a10e
--- /dev/null
+++ b/doc/html/simple__base__implementation_8cpp__incl.map
@@ -0,0 +1,20 @@
+<map id="simple_base_implementation.cpp" name="simple_base_implementation.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="381,5,624,32"/>
+<area shape="rect" id="node2" href="$simple__base__implementation_8h.html" title=" " alt="" coords="428,80,577,121"/>
+<area shape="rect" id="node3" title=" " alt="" coords="341,512,419,539"/>
+<area shape="rect" id="node4" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="423,169,582,211"/>
+<area shape="rect" id="node5" href="$abstract__base_8h.html" title=" " alt="" coords="535,259,705,285"/>
+<area shape="rect" id="node6" title=" " alt="" coords="144,430,293,457"/>
+<area shape="rect" id="node7" title=" " alt="" coords="1181,512,1379,539"/>
+<area shape="rect" id="node8" title=" " alt="" coords="708,341,860,367"/>
+<area shape="rect" id="node9" title=" " alt="" coords="885,341,1017,367"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1041,341,1183,367"/>
+<area shape="rect" id="node11" title=" " alt="" coords="318,430,431,457"/>
+<area shape="rect" id="node12" title=" " alt="" coords="825,430,957,457"/>
+<area shape="rect" id="node13" title=" " alt="" coords="981,430,1054,457"/>
+<area shape="rect" id="node14" href="$abstract__param__reader_8h.html" title=" " alt="" coords="412,333,583,375"/>
+<area shape="rect" id="node17" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="1207,341,1374,367"/>
+<area shape="rect" id="node15" title=" " alt="" coords="691,430,749,457"/>
+<area shape="rect" id="node16" title=" " alt="" coords="456,423,616,464"/>
+<area shape="rect" id="node18" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1130,423,1305,464"/>
+</map>
diff --git a/doc/html/simple__base__implementation_8cpp__incl.md5 b/doc/html/simple__base__implementation_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..941126f1cbd19c6449af6714b2e2cdb9995fd079
--- /dev/null
+++ b/doc/html/simple__base__implementation_8cpp__incl.md5
@@ -0,0 +1 @@
+3f6e5eb4f8a733c4020dfd8d3070458c
\ No newline at end of file
diff --git a/doc/html/simple__base__implementation_8cpp__incl.png b/doc/html/simple__base__implementation_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..3aade27254e543dfd11d9952d9e533ee60de58c2
Binary files /dev/null and b/doc/html/simple__base__implementation_8cpp__incl.png differ
diff --git a/doc/html/simple__base__implementation_8cpp_source.html b/doc/html/simple__base__implementation_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..aae0db1a7d3198261d09a71b3a1d5299182af7c0
--- /dev/null
+++ b/doc/html/simple__base__implementation_8cpp_source.html
@@ -0,0 +1,107 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base_implementation.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_bff0e0394a2452d575b35258352fd8fb.html">base_bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base_implementation.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="simple__base__implementation_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="simple__base__implementation_8h.html">bridge/simple_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation::set_grasp_orientations</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>, std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; var){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    tf2::Quaternion x_rot(0,0,0,1);</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    tf2::Quaternion y_rot(0,0,0.707,0.707);</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    tf2::Quaternion z_rot(0,-0.707,0,0.707);</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::vector&lt;tf2::Quaternion&gt; basic_rot{x_rot, x_rot.inverse(), y_rot, y_rot.inverse(), z_rot.inverse()};</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;=&gt; 5 Basic grasp roatations (x, -x, y, -y, -z) &quot;</span>);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;s_od_q: var){</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;od_q: s_od_q.second){</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;            od_q.second = basic_rot;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;        }</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    }</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;}</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">   16</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation::inv_map_creation</a>(std::vector&lt;tf2::Transform&gt;&amp; map, std::vector&lt;tf2::Transform&gt;&amp; inv_map, std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; task_space){</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    std::vector&lt;tf2::Transform&gt; trans;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; map.size(); i++) {</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;s_od_q: task_space){</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;            <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;od_q: s_od_q.second){</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;                <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp;q: od_q.second){</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;                    <span class="keywordflow">if</span> (q.angle(map[i].getRotation()) &lt; 0.349066f){</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;                        inv_map.push_back(tf2::Transform(q, map[i].getOrigin()).inverse());</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;                        <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;                    }</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;                }</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;            }</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;caculated [inv_map] contains %li entrys...&quot;</span>, inv_map.size());</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;}</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">void Simple_base_implementation::cloud_calculation(Abstract_base* var){</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">    ROS_INFO(&quot;initialyze thread implementations...&quot;);</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment">    </span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">    for(auto&amp; s_od_q: var-&gt;task_space()) {</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">        std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt; clouds;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">        for(auto&amp; od_q: s_od_q.second) {</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">            clouds.push_back(pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr(new pcl::PointCloud&lt; pcl::PointXYZ &gt;));</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">        var-&gt;target_cloud().insert(std::pair&lt;const std::string, std::vector&lt;pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr&gt;&gt;(s_od_q.first, clouds));</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">    // Maybe OpenMP</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">    ROS_INFO(&quot;start [cloud] calculation...&quot;);</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">    // ------------------------------------------------------------</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">    tf2::Transform root(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0.4425f));</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">    // ------------------------------------------------------------</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">    for(auto&amp; s_c: var-&gt;target_cloud()){</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">        for(int i = 0; i &lt; s_c.second.size();i++){</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">            for(auto&amp; itf : var-&gt;inv_map()){</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">                for(auto&amp; r: var-&gt;task_space().at(s_c.first)[i].second){</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">                    tf2::Transform target(r, var-&gt;task_space().at(s_c.first)[i].first.pose_.getOrigin());</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">                    tf2::Transform base = target * (itf * root);</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">                    s_c.second[i]-&gt;push_back(pcl::PointXYZ(base.getOrigin().getX(), base.getOrigin().getY(), base.getOrigin().getZ()));</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">                }</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">            }</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">        }</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">    </span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">    ROS_INFO(&quot;[cloud]calculation done...&quot;);</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">    </span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">}</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">*/</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_aaa52f0dfe523e71039f06c4a9d527b23"><div class="ttname"><a href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation::inv_map_creation</a></div><div class="ttdeci">void inv_map_creation(std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space) override</div><div class="ttdoc">Create inversed reachability map.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base__implementation_8cpp_source.html#l00016">simple_base_implementation.cpp:16</a></div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_a58568c1809b8d1e7d6d66ce09c5f1974"><div class="ttname"><a href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation::set_grasp_orientations</a></div><div class="ttdeci">void set_grasp_orientations(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var) override</div><div class="ttdoc">Store grasp orientations as endeffector transforms.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base__implementation_8cpp_source.html#l00003">simple_base_implementation.cpp:3</a></div></div>
+<div class="ttc" id="asimple__base__implementation_8h_html"><div class="ttname"><a href="simple__base__implementation_8h.html">simple_base_implementation.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base__implementation_8h.html b/doc/html/simple__base__implementation_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b391f4287003dfdea767269d423c5389d416339
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base_implementation.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">simple_base_implementation.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base__implementation_8h_source.html">bridge/abstract_base_implementation.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="abstract__base_8h_source.html">bridge/abstract_base.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for simple_base_implementation.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base__implementation_8h__incl.png" border="0" usemap="#simple__base__implementation_8h" alt=""/></div>
+<map name="simple__base__implementation_8h" id="simple__base__implementation_8h">
+<area shape="rect" title=" " alt="" coords="389,5,616,32"/>
+<area shape="rect" title=" " alt="" coords="341,423,419,449"/>
+<area shape="rect" href="abstract__base__implementation_8h.html" title=" " alt="" coords="423,80,582,121"/>
+<area shape="rect" href="abstract__base_8h.html" title=" " alt="" coords="535,169,705,196"/>
+<area shape="rect" title=" " alt="" coords="144,341,293,367"/>
+<area shape="rect" title=" " alt="" coords="1181,423,1379,449"/>
+<area shape="rect" title=" " alt="" coords="708,251,860,278"/>
+<area shape="rect" title=" " alt="" coords="885,251,1017,278"/>
+<area shape="rect" title=" " alt="" coords="1041,251,1183,278"/>
+<area shape="rect" title=" " alt="" coords="318,341,431,367"/>
+<area shape="rect" title=" " alt="" coords="825,341,957,367"/>
+<area shape="rect" title=" " alt="" coords="981,341,1054,367"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="412,244,583,285"/>
+<area shape="rect" href="robot_2abstract__robot_8h.html" title=" " alt="" coords="1207,251,1374,278"/>
+<area shape="rect" title=" " alt="" coords="691,341,749,367"/>
+<area shape="rect" title=" " alt="" coords="456,333,616,375"/>
+<area shape="rect" href="robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1130,333,1305,375"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="simple__base__implementation_8h__dep__incl.png" border="0" usemap="#simple__base__implementation_8hdep" alt=""/></div>
+<map name="simple__base__implementation_8hdep" id="simple__base__implementation_8hdep">
+<area shape="rect" title=" " alt="" coords="129,5,356,32"/>
+<area shape="rect" href="simple__base__implementation_8cpp.html" title=" " alt="" coords="5,87,248,114"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="273,80,445,121"/>
+</map>
+</div>
+</div>
+<p><a href="simple__base__implementation_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSimple__base__implementation.html">Simple_base_implementation</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">refined base implementation  <a href="classSimple__base__implementation.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/simple__base__implementation_8h__dep__incl.map b/doc/html/simple__base__implementation_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..5144b4ae179d657cbfcf3f8d280c4508b5097455
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="simple_base_implementation.h" name="simple_base_implementation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="129,5,356,32"/>
+<area shape="rect" id="node2" href="$simple__base__implementation_8cpp.html" title=" " alt="" coords="5,87,248,114"/>
+<area shape="rect" id="node3" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="273,80,445,121"/>
+</map>
diff --git a/doc/html/simple__base__implementation_8h__dep__incl.md5 b/doc/html/simple__base__implementation_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..953aae83f962c421422e191c3b37796e2c0e8d90
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h__dep__incl.md5
@@ -0,0 +1 @@
+d1b774366312664421557d675d84ca61
\ No newline at end of file
diff --git a/doc/html/simple__base__implementation_8h__dep__incl.png b/doc/html/simple__base__implementation_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..955264f11c5a2d23ef4d3425a20b161017c16cef
Binary files /dev/null and b/doc/html/simple__base__implementation_8h__dep__incl.png differ
diff --git a/doc/html/simple__base__implementation_8h__incl.map b/doc/html/simple__base__implementation_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..a045cf755160dc957f7aca42c2e4b9a12842f404
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h__incl.map
@@ -0,0 +1,19 @@
+<map id="simple_base_implementation.h" name="simple_base_implementation.h">
+<area shape="rect" id="node1" title=" " alt="" coords="389,5,616,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="341,423,419,449"/>
+<area shape="rect" id="node3" href="$abstract__base__implementation_8h.html" title=" " alt="" coords="423,80,582,121"/>
+<area shape="rect" id="node4" href="$abstract__base_8h.html" title=" " alt="" coords="535,169,705,196"/>
+<area shape="rect" id="node5" title=" " alt="" coords="144,341,293,367"/>
+<area shape="rect" id="node6" title=" " alt="" coords="1181,423,1379,449"/>
+<area shape="rect" id="node7" title=" " alt="" coords="708,251,860,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="885,251,1017,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1041,251,1183,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="318,341,431,367"/>
+<area shape="rect" id="node11" title=" " alt="" coords="825,341,957,367"/>
+<area shape="rect" id="node12" title=" " alt="" coords="981,341,1054,367"/>
+<area shape="rect" id="node13" href="$abstract__param__reader_8h.html" title=" " alt="" coords="412,244,583,285"/>
+<area shape="rect" id="node16" href="$robot_2abstract__robot_8h.html" title=" " alt="" coords="1207,251,1374,278"/>
+<area shape="rect" id="node14" title=" " alt="" coords="691,341,749,367"/>
+<area shape="rect" id="node15" title=" " alt="" coords="456,333,616,375"/>
+<area shape="rect" id="node17" href="$robot__element_2abstract__robot__element_8h.html" title=" " alt="" coords="1130,333,1305,375"/>
+</map>
diff --git a/doc/html/simple__base__implementation_8h__incl.md5 b/doc/html/simple__base__implementation_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7770fe2d0b50dc5f72a175dd6847baa0ade84d4b
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h__incl.md5
@@ -0,0 +1 @@
+8ccd827bce578cd33cd47f7eed313d50
\ No newline at end of file
diff --git a/doc/html/simple__base__implementation_8h__incl.png b/doc/html/simple__base__implementation_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..df2b774a6c94ff48df0c12d339ac8f59c0927e40
Binary files /dev/null and b/doc/html/simple__base__implementation_8h__incl.png differ
diff --git a/doc/html/simple__base__implementation_8h_source.html b/doc/html/simple__base__implementation_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..10b9db4a683fb0862ac129a56cf5618e60be2973
--- /dev/null
+++ b/doc/html/simple__base__implementation_8h_source.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: simple_base_implementation.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82432a442f7690767534b978fe0f8420.html">bridge</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">simple_base_implementation.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="simple__base__implementation_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef SIMPLE_BASE_IMPLEMENTATION_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define SIMPLE_BASE_IMPLEMENTATION_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base__implementation_8h.html">bridge/abstract_base_implementation.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__base_8h.html">bridge/abstract_base.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="classSimple__base__implementation.html">   12</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSimple__base__implementation.html">Simple_base_implementation</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__base__implementation.html">Abstract_base_implementation</a> {</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">~Simple_base_implementation</a>()= <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">set_grasp_orientations</a>(std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>, std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; var) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">inv_map_creation</a>(std::vector&lt;tf2::Transform&gt;&amp; map, std::vector&lt;tf2::Transform&gt;&amp; inv_map, std::map&lt;<span class="keyword">const</span> std::string, std::vector&lt;std::pair&lt;<a class="code" href="structobject__data.html">object_data</a>,std::vector&lt;tf2::Quaternion&gt;&gt;&gt;&gt;&amp; task_space) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <span class="comment">//void cloud_calculation(Abstract_base* var) override;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160; </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;};</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassSimple__base__implementation_html"><div class="ttname"><a href="classSimple__base__implementation.html">Simple_base_implementation</a></div><div class="ttdoc">refined base implementation</div><div class="ttdef"><b>Definition:</b> <a href="simple__base__implementation_8h_source.html#l00012">simple_base_implementation.h:12</a></div></div>
+<div class="ttc" id="aabstract__base_8h_html"><div class="ttname"><a href="abstract__base_8h.html">abstract_base.h</a></div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_a434b134fd5a340a5fae0e2393e250462"><div class="ttname"><a href="classSimple__base__implementation.html#a434b134fd5a340a5fae0e2393e250462">Simple_base_implementation::Simple_base_implementation</a></div><div class="ttdeci">Simple_base_implementation()=default</div><div class="ttdoc">Default simple base implementation constructor.</div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_ad027ee9cbdd95ec53b31369ca86e208d"><div class="ttname"><a href="classSimple__base__implementation.html#ad027ee9cbdd95ec53b31369ca86e208d">Simple_base_implementation::~Simple_base_implementation</a></div><div class="ttdeci">~Simple_base_implementation()=default</div><div class="ttdoc">Default simple base implementation destructor.</div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_aaa52f0dfe523e71039f06c4a9d527b23"><div class="ttname"><a href="classSimple__base__implementation.html#aaa52f0dfe523e71039f06c4a9d527b23">Simple_base_implementation::inv_map_creation</a></div><div class="ttdeci">void inv_map_creation(std::vector&lt; tf2::Transform &gt; &amp;map, std::vector&lt; tf2::Transform &gt; &amp;inv_map, std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;task_space) override</div><div class="ttdoc">Create inversed reachability map.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base__implementation_8cpp_source.html#l00016">simple_base_implementation.cpp:16</a></div></div>
+<div class="ttc" id="aclassAbstract__base__implementation_html"><div class="ttname"><a href="classAbstract__base__implementation.html">Abstract_base_implementation</a></div><div class="ttdoc">abstract base implementation</div><div class="ttdef"><b>Definition:</b> <a href="abstract__base__implementation_8h_source.html#l00011">abstract_base_implementation.h:11</a></div></div>
+<div class="ttc" id="aclassSimple__base__implementation_html_a58568c1809b8d1e7d6d66ce09c5f1974"><div class="ttname"><a href="classSimple__base__implementation.html#a58568c1809b8d1e7d6d66ce09c5f1974">Simple_base_implementation::set_grasp_orientations</a></div><div class="ttdeci">void set_grasp_orientations(std::map&lt; const std::string, std::vector&lt; std::pair&lt; object_data, std::vector&lt; tf2::Quaternion &gt;&gt;&gt;&gt; &amp;var) override</div><div class="ttdoc">Store grasp orientations as endeffector transforms.</div><div class="ttdef"><b>Definition:</b> <a href="simple__base__implementation_8cpp_source.html#l00003">simple_base_implementation.cpp:3</a></div></div>
+<div class="ttc" id="aabstract__base__implementation_8h_html"><div class="ttname"><a href="abstract__base__implementation_8h.html">abstract_base_implementation.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/splitbar.png b/doc/html/splitbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e
Binary files /dev/null and b/doc/html/splitbar.png differ
diff --git a/doc/html/structjob__data-members.html b/doc/html/structjob__data-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..2af9fb57fda0ec4cc4170bb8ce400a22dd42ae0c
--- /dev/null
+++ b/doc/html/structjob__data-members.html
@@ -0,0 +1,37 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">job_data Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structjob__data.html">job_data</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">jobs_</a></td><td class="entry"><a class="el" href="structjob__data.html">job_data</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/structjob__data.html b/doc/html/structjob__data.html
new file mode 100644
index 0000000000000000000000000000000000000000..ef63508c2cb2e1ed2dfbde89172cf59fec994486
--- /dev/null
+++ b/doc/html/structjob__data.html
@@ -0,0 +1,67 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: job_data Struct Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structjob__data-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">job_data Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a9995696b3e7a24afb51e67a3cc8616d0"><td class="memItemLeft" align="right" valign="top">std::vector&lt; tf2::Transform &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjob__data.html#a9995696b3e7a24afb51e67a3cc8616d0">jobs_</a></td></tr>
+<tr class="separator:a9995696b3e7a24afb51e67a3cc8616d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00019">19</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+</div><h2 class="groupheader">Member Data Documentation</h2>
+<a id="a9995696b3e7a24afb51e67a3cc8616d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9995696b3e7a24afb51e67a3cc8616d0">&#9670;&nbsp;</a></span>jobs_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;tf2::Transform&gt; job_data::jobs_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00020">20</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/structobject__data-members.html b/doc/html/structobject__data-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..85ba59dfbb9736d5bf84b41b2851c34868c0738b
--- /dev/null
+++ b/doc/html/structobject__data-members.html
@@ -0,0 +1,39 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">object_data Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structobject__data.html">object_data</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">name_</a></td><td class="entry"><a class="el" href="structobject__data.html">object_data</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">pose_</a></td><td class="entry"><a class="el" href="structobject__data.html">object_data</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">size_</a></td><td class="entry"><a class="el" href="structobject__data.html">object_data</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/structobject__data.html b/doc/html/structobject__data.html
new file mode 100644
index 0000000000000000000000000000000000000000..013947f75d577bec52081855d548e1e6df9f31de
--- /dev/null
+++ b/doc/html/structobject__data.html
@@ -0,0 +1,103 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: object_data Struct Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structobject__data-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">object_data Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a048099bcb764a005e050ef51bdb6b308"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structobject__data.html#a048099bcb764a005e050ef51bdb6b308">name_</a></td></tr>
+<tr class="separator:a048099bcb764a005e050ef51bdb6b308"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f16f6c8bbaeeab8ad6d67a28bc8430d"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structobject__data.html#a3f16f6c8bbaeeab8ad6d67a28bc8430d">pose_</a></td></tr>
+<tr class="separator:a3f16f6c8bbaeeab8ad6d67a28bc8430d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1470f3d835395fb7c192273559b8a258"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structobject__data.html#a1470f3d835395fb7c192273559b8a258">size_</a></td></tr>
+<tr class="separator:a1470f3d835395fb7c192273559b8a258"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00013">13</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+</div><h2 class="groupheader">Member Data Documentation</h2>
+<a id="a048099bcb764a005e050ef51bdb6b308"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a048099bcb764a005e050ef51bdb6b308">&#9670;&nbsp;</a></span>name_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string object_data::name_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00014">14</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a3f16f6c8bbaeeab8ad6d67a28bc8430d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f16f6c8bbaeeab8ad6d67a28bc8430d">&#9670;&nbsp;</a></span>pose_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform object_data::pose_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00015">15</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<a id="a1470f3d835395fb7c192273559b8a258"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1470f3d835395fb7c192273559b8a258">&#9670;&nbsp;</a></span>size_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3 object_data::size_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="abstract__param__reader_8h_source.html#l00016">16</a> of file <a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="abstract__param__reader_8h_source.html">abstract_param_reader.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/structwing__BP-members.html b/doc/html/structwing__BP-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..996de5259aa34594d30ede48f3c5779a29a93ec6
--- /dev/null
+++ b/doc/html/structwing__BP-members.html
@@ -0,0 +1,39 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_BP Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structwing__BP.html">wing_BP</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">name_</a></td><td class="entry"><a class="el" href="structwing__BP.html">wing_BP</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">pos_</a></td><td class="entry"><a class="el" href="structwing__BP.html">wing_BP</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">size_</a></td><td class="entry"><a class="el" href="structwing__BP.html">wing_BP</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/structwing__BP.html b/doc/html/structwing__BP.html
new file mode 100644
index 0000000000000000000000000000000000000000..9199a04e81a863c8aab0369f8c80119bbde51ae0
--- /dev/null
+++ b/doc/html/structwing__BP.html
@@ -0,0 +1,103 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_BP Struct Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="structwing__BP-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">wing_BP Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="impl_2abstract__mediator_8h_source.html">abstract_mediator.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a294e3a77e24dec89f73422224f4091c9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwing__BP.html#a294e3a77e24dec89f73422224f4091c9">name_</a></td></tr>
+<tr class="separator:a294e3a77e24dec89f73422224f4091c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6396b771cdeff0b866020e3293a84eca"><td class="memItemLeft" align="right" valign="top">tf2::Transform&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwing__BP.html#a6396b771cdeff0b866020e3293a84eca">pos_</a></td></tr>
+<tr class="separator:a6396b771cdeff0b866020e3293a84eca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3cb0666a2473c6a2c5397f393812f56"><td class="memItemLeft" align="right" valign="top">tf2::Vector3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwing__BP.html#ad3cb0666a2473c6a2c5397f393812f56">size_</a></td></tr>
+<tr class="separator:ad3cb0666a2473c6a2c5397f393812f56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00026">26</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+</div><h2 class="groupheader">Member Data Documentation</h2>
+<a id="a294e3a77e24dec89f73422224f4091c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a294e3a77e24dec89f73422224f4091c9">&#9670;&nbsp;</a></span>name_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string wing_BP::name_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00027">27</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="a6396b771cdeff0b866020e3293a84eca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6396b771cdeff0b866020e3293a84eca">&#9670;&nbsp;</a></span>pos_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Transform wing_BP::pos_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00028">28</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<a id="ad3cb0666a2473c6a2c5397f393812f56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3cb0666a2473c6a2c5397f393812f56">&#9670;&nbsp;</a></span>size_</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">tf2::Vector3 wing_BP::size_</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="impl_2abstract__mediator_8h_source.html#l00029">29</a> of file <a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="impl_2abstract__mediator_8h_source.html">impl/abstract_mediator.h</a></li>
+</ul>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/sync_off.png b/doc/html/sync_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc
Binary files /dev/null and b/doc/html/sync_off.png differ
diff --git a/doc/html/sync_on.png b/doc/html/sync_on.png
new file mode 100644
index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76
Binary files /dev/null and b/doc/html/sync_on.png differ
diff --git a/doc/html/tab_a.png b/doc/html/tab_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247
Binary files /dev/null and b/doc/html/tab_a.png differ
diff --git a/doc/html/tab_b.png b/doc/html/tab_b.png
new file mode 100644
index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18
Binary files /dev/null and b/doc/html/tab_b.png differ
diff --git a/doc/html/tab_h.png b/doc/html/tab_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd5cb705488e60fcf30f56fcc951dee74f3b095b
Binary files /dev/null and b/doc/html/tab_h.png differ
diff --git a/doc/html/tab_s.png b/doc/html/tab_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab478c95b67371d700a20869f7de1ddd73522d50
Binary files /dev/null and b/doc/html/tab_s.png differ
diff --git a/doc/html/tabs.css b/doc/html/tabs.css
new file mode 100644
index 0000000000000000000000000000000000000000..7d45d36c1c7d9b590a1477fb219c91f8973228f0
--- /dev/null
+++ b/doc/html/tabs.css
@@ -0,0 +1 @@
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}
diff --git a/doc/html/task__space__reader_8cpp.html b/doc/html/task__space__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..be159cb116063d92e9abc119f6b88e08f2098898
--- /dev/null
+++ b/doc/html/task__space__reader_8cpp.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: task_space_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">task_space_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="task__space__reader_8h_source.html">reader/task_space_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for task_space_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="task__space__reader_8cpp__incl.png" border="0" usemap="#task__space__reader_8cpp" alt=""/></div>
+<map name="task__space__reader_8cpp" id="task__space__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="177,5,347,32"/>
+<area shape="rect" href="task__space__reader_8h.html" title=" " alt="" coords="161,80,363,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="task__space__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/task__space__reader_8cpp__incl.map b/doc/html/task__space__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..ad88a582b062274708956685d2e9a57173539626
--- /dev/null
+++ b/doc/html/task__space__reader_8cpp__incl.map
@@ -0,0 +1,13 @@
+<map id="task_space_reader.cpp" name="task_space_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="177,5,347,32"/>
+<area shape="rect" id="node2" href="$task__space__reader_8h.html" title=" " alt="" coords="161,80,363,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/task__space__reader_8cpp__incl.md5 b/doc/html/task__space__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..10c11c5490d5c465795f2c635d2438f941462b34
--- /dev/null
+++ b/doc/html/task__space__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+e2425e2fe86f67a2c9d79f7b611646a9
\ No newline at end of file
diff --git a/doc/html/task__space__reader_8cpp__incl.png b/doc/html/task__space__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..ad2b8e7d175b976fc4c092d6b5266be592672747
Binary files /dev/null and b/doc/html/task__space__reader_8cpp__incl.png differ
diff --git a/doc/html/task__space__reader_8cpp_source.html b/doc/html/task__space__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6d70348948e73211520cd0d0799df994d3283e7
--- /dev/null
+++ b/doc/html/task__space__reader_8cpp_source.html
@@ -0,0 +1,115 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: task_space_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">task_space_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="task__space__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="task__space__reader_8h.html">reader/task_space_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno"><a class="line" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">    4</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader::read</a>(){</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    std::string filename = <span class="stringliteral">&quot;dummy.yaml&quot;</span>;</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <span class="comment">//nh_-&gt;getParam(&quot;/resource_name&quot;, filename);</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>, resources);</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    std::vector&lt;tf2::Vector3&gt; robot_middle;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    std::vector&lt;tf2::Vector3&gt;* robot_pointer = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    std::regex rx(<span class="stringliteral">&quot;table([0-9]+)_table_top&quot;</span>);</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- TASK_SPACE_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    std::map&lt;const std::string, std::vector&lt;tf2::Vector3&gt;&gt; map;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;      std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;      <span class="keywordflow">if</span> (std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        std::stringstream ss;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        map.insert(std::make_pair&lt;<span class="keyword">const</span> std::string, std::vector&lt;tf2::Vector3&gt;&gt;(ss.str().c_str(), std::vector&lt;tf2::Vector3&gt;()));</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;      }</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    tf2::Vector3 pos(0,0,0);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;      <span class="keywordflow">if</span> (resources[i][<span class="stringliteral">&quot;type&quot;</span>] == <span class="stringliteral">&quot;DROP_OFF_LOCATION&quot;</span>){</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;A&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;B&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;C&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;D&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;E&#39;</span>)  robot_pointer = &amp;robot_middle;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;F&#39;</span>)  robot_pointer = &amp;robot_middle;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;G&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;H&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;I&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;J&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;      </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        <span class="keywordflow">if</span> (robot_pointer){</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;          tf2::Vector3 pos(0,0,0);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;          robot_pointer-&gt;push_back(pos);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        }</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;      }</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;      robot_pointer = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="comment">// lets make some result data</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;writing file...&quot;</span>);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    std::ofstream o(ros::package::getPath(<span class="stringliteral">&quot;multi_cell_builder&quot;</span>) + <span class="stringliteral">&quot;/descriptions/&quot;</span> + filename);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    YAML::Node node;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span> robot: map){</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;      <span class="keywordflow">for</span>(tf2::Vector3&amp; vec : robot.second){</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;groups&quot;</span>][robot.first].push_back(YAML::Load(std::string(<span class="stringliteral">&quot;{ &#39;pos&#39;: {&#39;x&#39;: &quot;</span>) + std::to_string(vec.getX()) + <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> + std::to_string(vec.getY()) + <span class="stringliteral">&quot;, &#39;z&#39;:&quot;</span> + std::to_string(vec.getZ()) + std::string(<span class="stringliteral">&quot;}}&quot;</span>)));</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;      }</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    }</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span> robot: map){</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;      <span class="keywordflow">for</span>(tf2::Vector3&amp; vec : robot_middle){</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        node[<span class="stringliteral">&quot;task&quot;</span>][<span class="stringliteral">&quot;groups&quot;</span>][robot.first].push_back(YAML::Load(std::string(<span class="stringliteral">&quot;{ &#39;pos&#39;: {&#39;x&#39;: &quot;</span>) + std::to_string(vec.getX()) + <span class="stringliteral">&quot;, &#39;y&#39;: &quot;</span> + std::to_string(vec.getY()) + <span class="stringliteral">&quot;, &#39;z&#39;:&quot;</span> + std::to_string(vec.getZ()) + std::string(<span class="stringliteral">&quot;}}&quot;</span>)));</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;      }</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    }</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    o &lt;&lt; node;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    o.close();</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="aclassTask__space__reader_html_adc53046a1920b11614bc9e0532475f94"><div class="ttname"><a href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="task__space__reader_8cpp_source.html#l00004">task_space_reader.cpp:4</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+<div class="ttc" id="atask__space__reader_8h_html"><div class="ttname"><a href="task__space__reader_8h.html">task_space_reader.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/task__space__reader_8h.html b/doc/html/task__space__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..7f795500141c3592a616c4168d1236883772eab5
--- /dev/null
+++ b/doc/html/task__space__reader_8h.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: task_space_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">task_space_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for task_space_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="task__space__reader_8h__incl.png" border="0" usemap="#task__space__reader_8h" alt=""/></div>
+<map name="task__space__reader_8h" id="task__space__reader_8h">
+<area shape="rect" title=" " alt="" coords="184,5,340,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="task__space__reader_8h__dep__incl.png" border="0" usemap="#task__space__reader_8hdep" alt=""/></div>
+<map name="task__space__reader_8hdep" id="task__space__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="93,5,249,32"/>
+<area shape="rect" href="mtc2taskspace_8cpp.html" title=" " alt="" coords="5,80,153,107"/>
+<area shape="rect" href="task__space__reader_8cpp.html" title=" " alt="" coords="178,80,349,107"/>
+</map>
+</div>
+</div>
+<p><a href="task__space__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTask__space__reader.html">Task_space_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Task space reader.  <a href="classTask__space__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/task__space__reader_8h__dep__incl.map b/doc/html/task__space__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..60c5876dd9b9f6b700eba71309ffb0a34d6ba86c
--- /dev/null
+++ b/doc/html/task__space__reader_8h__dep__incl.map
@@ -0,0 +1,5 @@
+<map id="task_space_reader.h" name="task_space_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="93,5,249,32"/>
+<area shape="rect" id="node2" href="$mtc2taskspace_8cpp.html" title=" " alt="" coords="5,80,153,107"/>
+<area shape="rect" id="node3" href="$task__space__reader_8cpp.html" title=" " alt="" coords="178,80,349,107"/>
+</map>
diff --git a/doc/html/task__space__reader_8h__dep__incl.md5 b/doc/html/task__space__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..315455166bcdf52de806e4282f1d2f6a4b6297bd
--- /dev/null
+++ b/doc/html/task__space__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+f9164eadb5fd4e98b04957146340b73f
\ No newline at end of file
diff --git a/doc/html/task__space__reader_8h__dep__incl.png b/doc/html/task__space__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..d96f2ed3e3ff387f80988f05c270f0291b417005
Binary files /dev/null and b/doc/html/task__space__reader_8h__dep__incl.png differ
diff --git a/doc/html/task__space__reader_8h__incl.map b/doc/html/task__space__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..90909e919c32d3e40977edc41fad4e97d8f71c50
--- /dev/null
+++ b/doc/html/task__space__reader_8h__incl.map
@@ -0,0 +1,12 @@
+<map id="task_space_reader.h" name="task_space_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="184,5,340,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/task__space__reader_8h__incl.md5 b/doc/html/task__space__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..07d6be071a069c494d949f794aab1f6fa48f8de2
--- /dev/null
+++ b/doc/html/task__space__reader_8h__incl.md5
@@ -0,0 +1 @@
+d524764753d89192f86fd3f972d84e15
\ No newline at end of file
diff --git a/doc/html/task__space__reader_8h__incl.png b/doc/html/task__space__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..318532849f28f46a93f267fd26c0ae91f96620b2
Binary files /dev/null and b/doc/html/task__space__reader_8h__incl.png differ
diff --git a/doc/html/task__space__reader_8h_source.html b/doc/html/task__space__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..833d34fce1b409739b6d49043aa0f9d50a410f3b
--- /dev/null
+++ b/doc/html/task__space__reader_8h_source.html
@@ -0,0 +1,61 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: task_space_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">task_space_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="task__space__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef TASK_SPACE_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define TASK_SPACE_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classTask__space__reader.html">   15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classTask__space__reader.html">Task_space_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">   22</a></span>&#160;    <a class="code" href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">read</a>();}</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    </div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;};</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassTask__space__reader_html"><div class="ttname"><a href="classTask__space__reader.html">Task_space_reader</a></div><div class="ttdoc">Task space reader.</div><div class="ttdef"><b>Definition:</b> <a href="task__space__reader_8h_source.html#l00015">task_space_reader.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassTask__space__reader_html_ac522966d855d5e4f097265945d60456c"><div class="ttname"><a href="classTask__space__reader.html#ac522966d855d5e4f097265945d60456c">Task_space_reader::Task_space_reader</a></div><div class="ttdeci">Task_space_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Task space reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="task__space__reader_8h_source.html#l00022">task_space_reader.h:22</a></div></div>
+<div class="ttc" id="aclassTask__space__reader_html_adc53046a1920b11614bc9e0532475f94"><div class="ttname"><a href="classTask__space__reader.html#adc53046a1920b11614bc9e0532475f94">Task_space_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="task__space__reader_8cpp_source.html#l00004">task_space_reader.cpp:4</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ts__reader_8cpp.html b/doc/html/ts__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f8554a9876fda73d02d68c5fdb70f802c32832e
--- /dev/null
+++ b/doc/html/ts__reader_8cpp.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ts_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ts_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="ts__reader_8h_source.html">reader/ts_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for ts_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="ts__reader_8cpp__incl.png" border="0" usemap="#ts__reader_8cpp" alt=""/></div>
+<map name="ts__reader_8cpp" id="ts__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="207,5,317,32"/>
+<area shape="rect" href="ts__reader_8h.html" title=" " alt="" coords="191,80,333,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="ts__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ts__reader_8cpp__incl.map b/doc/html/ts__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..08ce780c741c2fb54b7fe9632ec70c80e858797b
--- /dev/null
+++ b/doc/html/ts__reader_8cpp__incl.map
@@ -0,0 +1,13 @@
+<map id="ts_reader.cpp" name="ts_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="207,5,317,32"/>
+<area shape="rect" id="node2" href="$ts__reader_8h.html" title=" " alt="" coords="191,80,333,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/ts__reader_8cpp__incl.md5 b/doc/html/ts__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..3fc90f7c9914bbecf876235c1b98e575eb9c8d61
--- /dev/null
+++ b/doc/html/ts__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+b0b11fe2b0ccd4dba56cfb58ada8a1be
\ No newline at end of file
diff --git a/doc/html/ts__reader_8cpp__incl.png b/doc/html/ts__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0d88c46f293cf1732b9f198a09afb61767222b2f
Binary files /dev/null and b/doc/html/ts__reader_8cpp__incl.png differ
diff --git a/doc/html/ts__reader_8cpp_source.html b/doc/html/ts__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..78c432834fc1e5f140763d0ecab3c81c97d14190
--- /dev/null
+++ b/doc/html/ts__reader_8cpp_source.html
@@ -0,0 +1,117 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ts_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ts_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="ts__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ts__reader_8h.html">reader/ts_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader::read</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    std::string filename = <span class="stringliteral">&quot;dummy.yaml&quot;</span>;</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <span class="comment">//nh_-&gt;getParam(&quot;/resource_name&quot;, filename);</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>, resources);</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    std::vector&lt;object_data&gt; robot_middle;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    std::vector&lt;object_data&gt;* robot_pointer = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    std::regex rx(<span class="stringliteral">&quot;table([0-9]+)_table_top&quot;</span>);</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- TASK_SPACE_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    std::map&lt;const std::string, std::vector&lt;object_data&gt;&gt; map;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;      std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;      <span class="keywordflow">if</span> (std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;        std::stringstream ss;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;        map.insert(std::make_pair&lt;<span class="keyword">const</span> std::string, std::vector&lt;object_data&gt;&gt;(ss.str().c_str(), std::vector&lt;object_data&gt;()));</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;      }</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    }</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;      <span class="keywordflow">if</span> (resources[i][<span class="stringliteral">&quot;type&quot;</span>] == <span class="stringliteral">&quot;DROP_OFF_LOCATION&quot;</span>){</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;A&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;B&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;C&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;D&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm1&quot;</span>);</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;E&#39;</span>)  robot_pointer = &amp;robot_middle;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;F&#39;</span>)  robot_pointer = &amp;robot_middle;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;G&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;H&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;I&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        <span class="keywordflow">if</span>(str[0] == <span class="charliteral">&#39;J&#39;</span>)  robot_pointer = &amp;map.at(<span class="stringliteral">&quot;panda_arm2&quot;</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;      </div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">if</span> (robot_pointer){</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;          tf2::Vector3 pos(0,0,0);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;          tf2::Quaternion rot(0,0,0,1);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;          tf2::Vector3 size(0,0,0);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160; </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :pos.setZ(0);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :pos.setW(0);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160; </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;          robot_pointer-&gt;push_back({<span class="stringliteral">&quot;&quot;</span>, tf2::Transform(rot, pos), size});</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        }</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;      }</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;      robot_pointer = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    }</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordflow">for</span>(<span class="keyword">auto</span>&amp; robot: map){</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;      <span class="keywordflow">for</span>(<a class="code" href="structobject__data.html">object_data</a>&amp; tf : robot_middle){</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        robot.second.push_back(tf);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;      }</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    }</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <a class="code" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">set_drop_off_data</a>(map);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassTs__reader_html_a9b724ab02280e36e71b3ac5515f2fed3"><div class="ttname"><a href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8cpp_source.html#l00003">ts_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="astructobject__data_html"><div class="ttname"><a href="structobject__data.html">object_data</a></div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00013">abstract_param_reader.h:13</a></div></div>
+<div class="ttc" id="ats__reader_8h_html"><div class="ttname"><a href="ts__reader_8h.html">ts_reader.h</a></div></div>
+<div class="ttc" id="aclassTs__reader_html_ae72a1b14426b9a5c4da570b5c4378c87"><div class="ttname"><a href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">Ts_reader::set_drop_off_data</a></div><div class="ttdeci">void set_drop_off_data(std::map&lt; const std::string, std::vector&lt; object_data &gt;&gt; &amp;dod)</div><div class="ttdoc">Set drop off data.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00037">ts_reader.h:37</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ts__reader_8h.html b/doc/html/ts__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..8f94424f4c98c64857f9970dc5b8dc57399b7e47
--- /dev/null
+++ b/doc/html/ts__reader_8h.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ts_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">ts_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for ts_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="ts__reader_8h__incl.png" border="0" usemap="#ts__reader_8h" alt=""/></div>
+<map name="ts__reader_8h" id="ts__reader_8h">
+<area shape="rect" title=" " alt="" coords="215,5,309,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="ts__reader_8h__dep__incl.png" border="0" usemap="#ts__reader_8hdep" alt=""/></div>
+<map name="ts__reader_8hdep" id="ts__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="302,5,397,32"/>
+<area shape="rect" href="simple__base_8h.html" title=" " alt="" coords="115,80,231,107"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="273,80,426,107"/>
+<area shape="rect" href="ts__reader_8cpp.html" title=" " alt="" coords="450,80,561,107"/>
+<area shape="rect" href="simple__base_8cpp.html" title=" " alt="" coords="5,155,136,181"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="113,229,285,271"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="262,155,471,181"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="496,155,664,181"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="309,237,533,263"/>
+</map>
+</div>
+</div>
+<p><a href="ts__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTs__reader.html">Ts_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">TS reader.  <a href="classTs__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/ts__reader_8h__dep__incl.map b/doc/html/ts__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..2fa50d4dd06dcc272a0a7d3cfedead793cf75f29
--- /dev/null
+++ b/doc/html/ts__reader_8h__dep__incl.map
@@ -0,0 +1,11 @@
+<map id="ts_reader.h" name="ts_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="302,5,397,32"/>
+<area shape="rect" id="node2" href="$simple__base_8h.html" title=" " alt="" coords="115,80,231,107"/>
+<area shape="rect" id="node5" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="273,80,426,107"/>
+<area shape="rect" id="node9" href="$ts__reader_8cpp.html" title=" " alt="" coords="450,80,561,107"/>
+<area shape="rect" id="node3" href="$simple__base_8cpp.html" title=" " alt="" coords="5,155,136,181"/>
+<area shape="rect" id="node4" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="113,229,285,271"/>
+<area shape="rect" id="node6" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="262,155,471,181"/>
+<area shape="rect" id="node8" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="496,155,664,181"/>
+<area shape="rect" id="node7" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="309,237,533,263"/>
+</map>
diff --git a/doc/html/ts__reader_8h__dep__incl.md5 b/doc/html/ts__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..4d864b043c533f3ecb875044cb5bdc50926fae9f
--- /dev/null
+++ b/doc/html/ts__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+96f055a5757671b1a9a33094407fb2b2
\ No newline at end of file
diff --git a/doc/html/ts__reader_8h__dep__incl.png b/doc/html/ts__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..81efecf01ca7998d4091d278db03e8260de24077
Binary files /dev/null and b/doc/html/ts__reader_8h__dep__incl.png differ
diff --git a/doc/html/ts__reader_8h__incl.map b/doc/html/ts__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..b32ea2e95b34a9e5bd6ebee8b1f81c3dee85b80f
--- /dev/null
+++ b/doc/html/ts__reader_8h__incl.map
@@ -0,0 +1,12 @@
+<map id="ts_reader.h" name="ts_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="215,5,309,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/ts__reader_8h__incl.md5 b/doc/html/ts__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0874d2c71e2c046eeb305eea46e0f2310ee56854
--- /dev/null
+++ b/doc/html/ts__reader_8h__incl.md5
@@ -0,0 +1 @@
+b3c6b9773657d6cae0a0a8697198cd0c
\ No newline at end of file
diff --git a/doc/html/ts__reader_8h__incl.png b/doc/html/ts__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..15f4f01dae15d4de209f825c35fff7adc57903d3
Binary files /dev/null and b/doc/html/ts__reader_8h__incl.png differ
diff --git a/doc/html/ts__reader_8h_source.html b/doc/html/ts__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..702dccac4f95b84f2be1b753d45cbfc1026f2046
--- /dev/null
+++ b/doc/html/ts__reader_8h_source.html
@@ -0,0 +1,73 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: ts_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">ts_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="ts__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef TS_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define TS_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classTs__reader.html">   15</a></span>&#160;<span class="keyword">class </span><a class="code" href="classTs__reader.html">Ts_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">   17</a></span>&#160;    std::map&lt;const std::string, std::vector&lt;object_data&gt;&gt; <a class="code" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">drop_off_data_</a>;  </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">   25</a></span>&#160;    <a class="code" href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">read</a>();}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">   31</a></span>&#160;    <span class="keyword">inline</span> std::map&lt; const std::string, std::vector&lt;object_data&gt;&gt;&amp; <a class="code" href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">drop_off_data</a>() {<span class="keywordflow">return</span> <a class="code" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">drop_off_data_</a>;}</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">   37</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">set_drop_off_data</a>(std::map&lt; <span class="keyword">const</span> std::string, std::vector&lt;object_data&gt;&gt;&amp; dod) {<a class="code" href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">drop_off_data_</a>= dod;}</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;};</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassTs__reader_html_a9b724ab02280e36e71b3ac5515f2fed3"><div class="ttname"><a href="classTs__reader.html#a9b724ab02280e36e71b3ac5515f2fed3">Ts_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8cpp_source.html#l00003">ts_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassTs__reader_html_ad9b8ee9df3fd4477bb56b3a7c41eb5e0"><div class="ttname"><a href="classTs__reader.html#ad9b8ee9df3fd4477bb56b3a7c41eb5e0">Ts_reader::Ts_reader</a></div><div class="ttdeci">Ts_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">TS reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00025">ts_reader.h:25</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassTs__reader_html_a53d3f559a9b1d43b6bedf321849a81fe"><div class="ttname"><a href="classTs__reader.html#a53d3f559a9b1d43b6bedf321849a81fe">Ts_reader::drop_off_data</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; object_data &gt; &gt; &amp; drop_off_data()</div><div class="ttdoc">Get drop off data.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00031">ts_reader.h:31</a></div></div>
+<div class="ttc" id="aclassTs__reader_html_a74d617259a32c10da34cf8a664e48799"><div class="ttname"><a href="classTs__reader.html#a74d617259a32c10da34cf8a664e48799">Ts_reader::drop_off_data_</a></div><div class="ttdeci">std::map&lt; const std::string, std::vector&lt; object_data &gt; &gt; drop_off_data_</div><div class="ttdoc">Map of drop off data to robot.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00017">ts_reader.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassTs__reader_html_ae72a1b14426b9a5c4da570b5c4378c87"><div class="ttname"><a href="classTs__reader.html#ae72a1b14426b9a5c4da570b5c4378c87">Ts_reader::set_drop_off_data</a></div><div class="ttdeci">void set_drop_off_data(std::map&lt; const std::string, std::vector&lt; object_data &gt;&gt; &amp;dod)</div><div class="ttdoc">Set drop off data.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00037">ts_reader.h:37</a></div></div>
+<div class="ttc" id="aclassTs__reader_html"><div class="ttname"><a href="classTs__reader.html">Ts_reader</a></div><div class="ttdoc">TS reader.</div><div class="ttdef"><b>Definition:</b> <a href="ts__reader_8h_source.html#l00015">ts_reader.h:15</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing_8h.html b/doc/html/wing_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..6ce001e0677b59210d6650bd77cab2d847ebb7f2
--- /dev/null
+++ b/doc/html/wing_8h.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">wing.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element_8h_source.html">impl/abstract_robot_element.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing_8h__incl.png" border="0" usemap="#wing_8h" alt=""/></div>
+<map name="wing_8h" id="wing_8h">
+<area shape="rect" title=" " alt="" coords="93,5,159,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,80,269,121"/>
+<area shape="rect" title=" " alt="" coords="108,177,307,203"/>
+<area shape="rect" title=" " alt="" coords="331,169,478,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing_8h__dep__incl.png" border="0" usemap="#wing_8hdep" alt=""/></div>
+<map name="wing_8hdep" id="wing_8hdep">
+<area shape="rect" title=" " alt="" coords="409,5,474,32"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="494,155,562,181"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="195,379,328,405"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="748,453,916,480"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="1133,379,1259,405"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="1264,229,1451,256"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="280,80,445,107"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="570,229,723,256"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="400,304,493,331"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="869,379,1059,405"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="811,304,957,331"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="1038,229,1159,256"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="408,229,491,256"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="568,304,736,331"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="369,379,477,405"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="994,453,1198,480"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="683,379,845,405"/>
+<area shape="rect" href="wing__moveit__decorator_8cpp.html" title=" " alt="" coords="1285,304,1488,331"/>
+<area shape="rect" href="wing__rviz__decorator_8cpp.html" title=" " alt="" coords="94,155,274,181"/>
+</map>
+</div>
+</div>
+<p><a href="wing_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing.html">Wing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing_8h__dep__incl.map b/doc/html/wing_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..e1b7a2d9007947e1ea617bc42178cfeeb09c60f4
--- /dev/null
+++ b/doc/html/wing_8h__dep__incl.map
@@ -0,0 +1,21 @@
+<map id="wing.h" name="wing.h">
+<area shape="rect" id="node1" title=" " alt="" coords="409,5,474,32"/>
+<area shape="rect" id="node2" href="$robot_8h.html" title=" " alt="" coords="494,155,562,181"/>
+<area shape="rect" id="node5" href="$base__routine_8cpp.html" title=" " alt="" coords="195,379,328,405"/>
+<area shape="rect" id="node8" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="748,453,916,480"/>
+<area shape="rect" id="node11" href="$cell__routine_8cpp.html" title=" " alt="" coords="1133,379,1259,405"/>
+<area shape="rect" id="node16" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="1264,229,1451,256"/>
+<area shape="rect" id="node18" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="280,80,445,107"/>
+<area shape="rect" id="node3" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="570,229,723,256"/>
+<area shape="rect" id="node4" href="$mediator_8h.html" title=" " alt="" coords="400,304,493,331"/>
+<area shape="rect" id="node7" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="869,379,1059,405"/>
+<area shape="rect" id="node10" href="$moveit__mediator_8h.html" title=" " alt="" coords="811,304,957,331"/>
+<area shape="rect" id="node14" href="$moveit__robot_8h.html" title=" " alt="" coords="1038,229,1159,256"/>
+<area shape="rect" id="node15" href="$robot_8cpp.html" title=" " alt="" coords="408,229,491,256"/>
+<area shape="rect" id="node13" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="568,304,736,331"/>
+<area shape="rect" id="node6" href="$mediator_8cpp.html" title=" " alt="" coords="369,379,477,405"/>
+<area shape="rect" id="node9" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="994,453,1198,480"/>
+<area shape="rect" id="node12" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="683,379,845,405"/>
+<area shape="rect" id="node17" href="$wing__moveit__decorator_8cpp.html" title=" " alt="" coords="1285,304,1488,331"/>
+<area shape="rect" id="node19" href="$wing__rviz__decorator_8cpp.html" title=" " alt="" coords="94,155,274,181"/>
+</map>
diff --git a/doc/html/wing_8h__dep__incl.md5 b/doc/html/wing_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..ffa7aed9fcde7a0cd641d42de1c52e217b788199
--- /dev/null
+++ b/doc/html/wing_8h__dep__incl.md5
@@ -0,0 +1 @@
+8cb53b66875a5eeb5dbc58609768a30f
\ No newline at end of file
diff --git a/doc/html/wing_8h__dep__incl.png b/doc/html/wing_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..06fd8632191ad7a9546e6e6aabdb6e2de654f438
Binary files /dev/null and b/doc/html/wing_8h__dep__incl.png differ
diff --git a/doc/html/wing_8h__incl.map b/doc/html/wing_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..cc6df0586cae1ad5da11cdffaf11ae4802aced58
--- /dev/null
+++ b/doc/html/wing_8h__incl.map
@@ -0,0 +1,7 @@
+<map id="wing.h" name="wing.h">
+<area shape="rect" id="node1" title=" " alt="" coords="93,5,159,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="119,80,269,121"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,177,307,203"/>
+<area shape="rect" id="node5" title=" " alt="" coords="331,169,478,211"/>
+</map>
diff --git a/doc/html/wing_8h__incl.md5 b/doc/html/wing_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..dce146f05b1e93bb014f5a3a56aa8fd60b1350af
--- /dev/null
+++ b/doc/html/wing_8h__incl.md5
@@ -0,0 +1 @@
+62ed52128151655f4c9a2e7be20634df
\ No newline at end of file
diff --git a/doc/html/wing_8h__incl.png b/doc/html/wing_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..68ec46fff313a94be97009216ae7bf7559feb91b
Binary files /dev/null and b/doc/html/wing_8h__incl.png differ
diff --git a/doc/html/wing_8h_source.html b/doc/html/wing_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b2082a2a1cf54a43b2ad58b43fe1e311d668f2dd
--- /dev/null
+++ b/doc/html/wing_8h_source.html
@@ -0,0 +1,85 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef WING_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define WING_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element_8h.html">impl/abstract_robot_element.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno"><a class="line" href="classWing.html">    7</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWing.html">Wing</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>{</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">    9</a></span>&#160;    std::string <a class="code" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a>;</div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">   10</a></span>&#160;    tf2::Vector3 <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>;</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">   11</a></span>&#160;    std::vector&lt;tf2::Transform&gt; <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">   14</a></span>&#160;    <a class="code" href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing</a>(std::string <a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>, tf2::Transform tf, tf2::Vector3 <a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>) : <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>(<a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>), <a class="code" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a>(<a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>){ </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;        <a class="code" href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">relative_tf_</a> = tf;</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;        <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getX()/2.f, <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getY()/2.f,0))); <span class="comment">//++</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getX()/2.f, <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getY()/-2.f,0))); <span class="comment">//+-</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getX()/-2.f, <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getY()/-2.f,0))); <span class="comment">//--</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;        <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(<a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getX()/-2.f, <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>.getY()/2.f,0))); <span class="comment">//-+</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;        }</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">   21</a></span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">~Wing</a>() {}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;        </div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">   23</a></span>&#160;    <span class="keyword">inline</span> std::string&amp; <a class="code" href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">name</a>() {<span class="keywordflow">return</span> <a class="code" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a>;}</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classWing.html#a59974ceb515b29cab964aba4314a8885">   24</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classWing.html#a59974ceb515b29cab964aba4314a8885">set_name</a>(std::string str) {<a class="code" href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">name_</a> = str;}</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">   25</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">set_set</a>(tf2::Vector3&amp; vec) {<a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a> = vec;}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classWing.html#a166b6d0367d7218947e3b2321360c521">   27</a></span>&#160;    <span class="keyword">inline</span> tf2::Vector3&amp; <a class="code" href="classWing.html#a166b6d0367d7218947e3b2321360c521">size</a>(){ <span class="keywordflow">return</span> <a class="code" href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">size_</a>;}</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">   28</a></span>&#160;    <span class="keyword">inline</span> std::vector&lt;tf2::Transform&gt;&amp; <a class="code" href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">bounds</a>() {<span class="keywordflow">return</span> <a class="code" href="classWing.html#a3f6648e53c9033078f940633fb93b10d">bounds_</a>;}</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">   29</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing.html#afc898c53233c825c8af1a74d0165f25d">update</a>(tf2::Transform&amp; tf)<span class="keyword"> override </span>{this-&gt;<a class="code" href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">calc_world_tf</a>(tf);}</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;};</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing_html_afc898c53233c825c8af1a74d0165f25d"><div class="ttname"><a href="classWing.html#afc898c53233c825c8af1a74d0165f25d">Wing::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00029">wing.h:29</a></div></div>
+<div class="ttc" id="aclassWing_html_ad8bf499109ae520a7dcd19afd564ff7b"><div class="ttname"><a href="classWing.html#ad8bf499109ae520a7dcd19afd564ff7b">Wing::bounds</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; &amp; bounds()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00028">wing.h:28</a></div></div>
+<div class="ttc" id="aclassWing_html_ad0765941cf4c23bc66b044d3583dd114"><div class="ttname"><a href="classWing.html#ad0765941cf4c23bc66b044d3583dd114">Wing::set_set</a></div><div class="ttdeci">void set_set(tf2::Vector3 &amp;vec)</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00025">wing.h:25</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element_8h.html">abstract_robot_element.h</a></div></div>
+<div class="ttc" id="aclassWing_html_a3dc2d8cffc9b50ff0a2333b68ea402cc"><div class="ttname"><a href="classWing.html#a3dc2d8cffc9b50ff0a2333b68ea402cc">Wing::name</a></div><div class="ttdeci">std::string &amp; name()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00023">wing.h:23</a></div></div>
+<div class="ttc" id="aclassWing_html_a166b6d0367d7218947e3b2321360c521"><div class="ttname"><a href="classWing.html#a166b6d0367d7218947e3b2321360c521">Wing::size</a></div><div class="ttdeci">tf2::Vector3 &amp; size()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00027">wing.h:27</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a83f046bb2fb1009832091cf8502af956"><div class="ttname"><a href="classAbstract__robot__element.html#a83f046bb2fb1009832091cf8502af956">Abstract_robot_element::relative_tf_</a></div><div class="ttdeci">tf2::Transform relative_tf_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00011">impl/abstract_robot_element.h:11</a></div></div>
+<div class="ttc" id="aclassWing_html_a6c6cf155019a6910abbffb089eac9e05"><div class="ttname"><a href="classWing.html#a6c6cf155019a6910abbffb089eac9e05">Wing::name_</a></div><div class="ttdeci">std::string name_</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00009">wing.h:9</a></div></div>
+<div class="ttc" id="aclassWing_html_aa9e78ec3662b1308a0d8676f79afc975"><div class="ttname"><a href="classWing.html#aa9e78ec3662b1308a0d8676f79afc975">Wing::~Wing</a></div><div class="ttdeci">virtual ~Wing()</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00021">wing.h:21</a></div></div>
+<div class="ttc" id="aclassWing_html_a18f6b141738c6ed89fc115ee07a4d397"><div class="ttname"><a href="classWing.html#a18f6b141738c6ed89fc115ee07a4d397">Wing::Wing</a></div><div class="ttdeci">Wing(std::string name, tf2::Transform tf, tf2::Vector3 size)</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00014">wing.h:14</a></div></div>
+<div class="ttc" id="aclassWing_html_a59974ceb515b29cab964aba4314a8885"><div class="ttname"><a href="classWing.html#a59974ceb515b29cab964aba4314a8885">Wing::set_name</a></div><div class="ttdeci">void set_name(std::string str)</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00024">wing.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a19e094e1639e2c72ead481a3c6c9ec24"><div class="ttname"><a href="classAbstract__robot__element.html#a19e094e1639e2c72ead481a3c6c9ec24">Abstract_robot_element::calc_world_tf</a></div><div class="ttdeci">void calc_world_tf(tf2::Transform &amp;tf)</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00019">impl/abstract_robot_element.h:19</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassWing_html_a895d92ca6fef5fdc5d2e60551199428c"><div class="ttname"><a href="classWing.html#a895d92ca6fef5fdc5d2e60551199428c">Wing::size_</a></div><div class="ttdeci">tf2::Vector3 size_</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00010">wing.h:10</a></div></div>
+<div class="ttc" id="aclassWing_html_a3f6648e53c9033078f940633fb93b10d"><div class="ttname"><a href="classWing.html#a3f6648e53c9033078f940633fb93b10d">Wing::bounds_</a></div><div class="ttdeci">std::vector&lt; tf2::Transform &gt; bounds_</div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00011">wing.h:11</a></div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__moveit__decorator_8cpp.html b/doc/html/wing__moveit__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..faa9dee911089e7c434a30df62675062c175be42
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8cpp.html
@@ -0,0 +1,59 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_moveit_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_moveit_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="wing__moveit__decorator_8h_source.html">impl/wing_moveit_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_moveit_decorator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__moveit__decorator_8cpp__incl.png" border="0" usemap="#wing__moveit__decorator_8cpp" alt=""/></div>
+<map name="wing__moveit__decorator_8cpp" id="wing__moveit__decorator_8cpp">
+<area shape="rect" title=" " alt="" coords="584,5,787,32"/>
+<area shape="rect" href="wing__moveit__decorator_8h.html" title=" " alt="" coords="575,80,795,107"/>
+<area shape="rect" title=" " alt="" coords="399,355,478,382"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="227,169,325,196"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="350,162,514,203"/>
+<area shape="rect" title=" " alt="" coords="589,155,781,211"/>
+<area shape="rect" title=" " alt="" coords="805,162,1024,203"/>
+<area shape="rect" title=" " alt="" coords="1049,162,1255,203"/>
+<area shape="rect" title=" " alt="" coords="1280,162,1453,203"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="201,259,351,300"/>
+<area shape="rect" title=" " alt="" coords="177,355,375,382"/>
+<area shape="rect" title=" " alt="" coords="5,348,152,389"/>
+</map>
+</div>
+</div>
+<p><a href="wing__moveit__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__moveit__decorator_8cpp__incl.map b/doc/html/wing__moveit__decorator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..f717df3af8efcca832b7a2cc6706c882c60e5545
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8cpp__incl.map
@@ -0,0 +1,14 @@
+<map id="wing_moveit_decorator.cpp" name="wing_moveit_decorator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="584,5,787,32"/>
+<area shape="rect" id="node2" href="$wing__moveit__decorator_8h.html" title=" " alt="" coords="575,80,795,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="399,355,478,382"/>
+<area shape="rect" id="node4" href="$wing_8h.html" title=" " alt="" coords="227,169,325,196"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="350,162,514,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="589,155,781,211"/>
+<area shape="rect" id="node10" title=" " alt="" coords="805,162,1024,203"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1049,162,1255,203"/>
+<area shape="rect" id="node12" title=" " alt="" coords="1280,162,1453,203"/>
+<area shape="rect" id="node5" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="201,259,351,300"/>
+<area shape="rect" id="node6" title=" " alt="" coords="177,355,375,382"/>
+<area shape="rect" id="node7" title=" " alt="" coords="5,348,152,389"/>
+</map>
diff --git a/doc/html/wing__moveit__decorator_8cpp__incl.md5 b/doc/html/wing__moveit__decorator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..bb25e63b3cc125b53e5b920fbc35d7bd3b934bcf
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8cpp__incl.md5
@@ -0,0 +1 @@
+8fde54e1a7dbb4807b137ad896913b19
\ No newline at end of file
diff --git a/doc/html/wing__moveit__decorator_8cpp__incl.png b/doc/html/wing__moveit__decorator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..0aa9f3363832c15a1fd2821e2e1039a2dddf3467
Binary files /dev/null and b/doc/html/wing__moveit__decorator_8cpp__incl.png differ
diff --git a/doc/html/wing__moveit__decorator_8cpp_source.html b/doc/html/wing__moveit__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..a22bbe92b32e24cec08293c4383950a72a1d229e
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8cpp_source.html
@@ -0,0 +1,86 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_moveit_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_moveit_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__moveit__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__moveit__decorator_8h.html">impl/wing_moveit_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator::update</a>(tf2::Transform&amp; tf) {</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a>(tf);</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">output_filter</a>();</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#ac35f08c723f54f3d5d8946fb4e252ab2">    8</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Wing_moveit_decorator::input_filter</a>(tf2::Transform&amp; tf) {}</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">   10</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator::output_filter</a>() {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    <a class="code" href="classWing.html">Wing</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span> (<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>);</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    tf2::Vector3 world_origin = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin();</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    tf2::Quaternion world_quat = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().normalized();</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160; </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;id = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>();</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;header.frame_id = <span class="stringliteral">&quot;world&quot;</span>;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives.resize(1);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].type = <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].BOX;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].dimensions.resize(3);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].dimensions[0] = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getX();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].dimensions[1] = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getY();</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitives[0].dimensions[2] = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getZ();</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160; </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses.resize(1);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].position.x = world_origin.getX();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].position.y = world_origin.getY();</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].position.z = world_origin.getZ() - <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getZ()/2;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].orientation.x = world_quat.getX();</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].orientation.y = world_quat.getY();</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].orientation.z = world_quat.getZ();</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;primitive_poses[0].orientation.w = world_quat.getW();</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;operation = <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>-&gt;ADD;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__moveit__decorator_html_a0a10fa719ce7c2fc4d637f3b7efe2e6c"><div class="ttname"><a href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">Wing_moveit_decorator::markers_</a></div><div class="ttdeci">moveit_msgs::CollisionObject * markers_</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00015">wing_moveit_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a910a29582a54972c947fa57bbdc444ec"><div class="ttname"><a href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element::name</a></div><div class="ttdeci">virtual std::string &amp; name()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a2eb0ca7627bba7b58e85046532e68269"><div class="ttname"><a href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element::size</a></div><div class="ttdeci">virtual tf2::Vector3 &amp; size()=0</div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_ade982b05a137aa3f80b229f02211105e"><div class="ttname"><a href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8cpp_source.html#l00003">wing_moveit_decorator.cpp:3</a></div></div>
+<div class="ttc" id="awing__moveit__decorator_8h_html"><div class="ttname"><a href="wing__moveit__decorator_8h.html">wing_moveit_decorator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a9138c650f2148d515802a89f079ace2f"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator::wing</a></div><div class="ttdeci">Abstract_robot_element * wing()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">impl/abstract_robot_element_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">impl/abstract_robot_element_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_a9654fdfeffcf5f1f1fd2f87b267c562b"><div class="ttname"><a href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8cpp_source.html#l00010">wing_moveit_decorator.cpp:10</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__moveit__decorator_8h.html b/doc/html/wing__moveit__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..513fa44c28f21595fa8e7c457a18279a337668c0
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h.html
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_moveit_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">wing_moveit_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;ros/ros.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+<code>#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</code><br />
+<code>#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</code><br />
+<code>#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</code><br />
+<code>#include &lt;moveit/planning_scene/planning_scene.h&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_moveit_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__moveit__decorator_8h__incl.png" border="0" usemap="#wing__moveit__decorator_8h" alt=""/></div>
+<map name="wing__moveit__decorator_8h" id="wing__moveit__decorator_8h">
+<area shape="rect" title=" " alt="" coords="592,5,779,32"/>
+<area shape="rect" title=" " alt="" coords="399,281,478,307"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="227,95,325,121"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="350,87,514,129"/>
+<area shape="rect" title=" " alt="" coords="589,80,781,136"/>
+<area shape="rect" title=" " alt="" coords="805,87,1024,129"/>
+<area shape="rect" title=" " alt="" coords="1049,87,1255,129"/>
+<area shape="rect" title=" " alt="" coords="1280,87,1453,129"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="201,184,351,225"/>
+<area shape="rect" title=" " alt="" coords="177,281,375,307"/>
+<area shape="rect" title=" " alt="" coords="5,273,152,315"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__moveit__decorator_8h__dep__incl.png" border="0" usemap="#wing__moveit__decorator_8hdep" alt=""/></div>
+<map name="wing__moveit__decorator_8hdep" id="wing__moveit__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="496,5,683,32"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="335,80,481,107"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,229,173,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="446,229,650,256"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="527,155,652,181"/>
+<area shape="rect" href="wing__moveit__decorator_8cpp.html" title=" " alt="" coords="727,80,929,107"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="313,155,503,181"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="127,155,289,181"/>
+</map>
+</div>
+</div>
+<p><a href="wing__moveit__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__moveit__decorator_8h__dep__incl.map b/doc/html/wing__moveit__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..6bce27605d827d82d54af7b138e699fd3c74e104
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h__dep__incl.map
@@ -0,0 +1,10 @@
+<map id="wing_moveit_decorator.h" name="wing_moveit_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="496,5,683,32"/>
+<area shape="rect" id="node2" href="$moveit__mediator_8h.html" title=" " alt="" coords="335,80,481,107"/>
+<area shape="rect" id="node4" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="5,229,173,256"/>
+<area shape="rect" id="node5" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="446,229,650,256"/>
+<area shape="rect" id="node6" href="$cell__routine_8cpp.html" title=" " alt="" coords="527,155,652,181"/>
+<area shape="rect" id="node8" href="$wing__moveit__decorator_8cpp.html" title=" " alt="" coords="727,80,929,107"/>
+<area shape="rect" id="node3" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="313,155,503,181"/>
+<area shape="rect" id="node7" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="127,155,289,181"/>
+</map>
diff --git a/doc/html/wing__moveit__decorator_8h__dep__incl.md5 b/doc/html/wing__moveit__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..1f28c7a55c86a08ac61d20ffa53c4c746cfaae08
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+d819d8119e619bebedab28740c0e83e1
\ No newline at end of file
diff --git a/doc/html/wing__moveit__decorator_8h__dep__incl.png b/doc/html/wing__moveit__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..18cb98f7d2565c87cfd53e3d320af892fbd1bb62
Binary files /dev/null and b/doc/html/wing__moveit__decorator_8h__dep__incl.png differ
diff --git a/doc/html/wing__moveit__decorator_8h__incl.map b/doc/html/wing__moveit__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..9e57e375a03f60ef498f04a5b438c5c67941b91a
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h__incl.map
@@ -0,0 +1,13 @@
+<map id="wing_moveit_decorator.h" name="wing_moveit_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="592,5,779,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="399,281,478,307"/>
+<area shape="rect" id="node3" href="$wing_8h.html" title=" " alt="" coords="227,95,325,121"/>
+<area shape="rect" id="node7" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="350,87,514,129"/>
+<area shape="rect" id="node8" title=" " alt="" coords="589,80,781,136"/>
+<area shape="rect" id="node9" title=" " alt="" coords="805,87,1024,129"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1049,87,1255,129"/>
+<area shape="rect" id="node11" title=" " alt="" coords="1280,87,1453,129"/>
+<area shape="rect" id="node4" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="201,184,351,225"/>
+<area shape="rect" id="node5" title=" " alt="" coords="177,281,375,307"/>
+<area shape="rect" id="node6" title=" " alt="" coords="5,273,152,315"/>
+</map>
diff --git a/doc/html/wing__moveit__decorator_8h__incl.md5 b/doc/html/wing__moveit__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..bbe0adc1a8680949f4d043cde0e85ca26fa75d7d
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h__incl.md5
@@ -0,0 +1 @@
+4e8a857dda6b9189d0fdceb4e9a5fe7f
\ No newline at end of file
diff --git a/doc/html/wing__moveit__decorator_8h__incl.png b/doc/html/wing__moveit__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..c76e1de701d8d8ee3f45e9003ad4c6d2e01e9242
Binary files /dev/null and b/doc/html/wing__moveit__decorator_8h__incl.png differ
diff --git a/doc/html/wing__moveit__decorator_8h_source.html b/doc/html/wing__moveit__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3e59faa584664a701cc7b77550eb4de24deb9051
--- /dev/null
+++ b/doc/html/wing__moveit__decorator_8h_source.html
@@ -0,0 +1,79 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_moveit_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_moveit_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__moveit__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef WING_MOVEIT_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define WING_MOVEIT_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;ros/ros.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene_interface/planning_scene_interface.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;moveit/move_group_interface/move_group_interface.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;moveit_msgs/ApplyPlanningScene.h&gt;</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;moveit/planning_scene/planning_scene.h&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html">   13</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWing__moveit__decorator.html">Wing_moveit_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>{</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">   15</a></span>&#160;    moveit_msgs::CollisionObject* <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a> = <span class="keyword">new</span> moveit_msgs::CollisionObject();</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">   19</a></span>&#160;    <a class="code" href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>) : <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>(<a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>){};</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">   20</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">set_markers</a>(moveit_msgs::CollisionObject* <a class="code" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>) { <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>= <a class="code" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>;}</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">   21</a></span>&#160;    <span class="keyword">inline</span> moveit_msgs::CollisionObject* <a class="code" href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">markers</a>() { <span class="keywordflow">return</span> <a class="code" href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">markers_</a>;}</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">output_filter</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;};</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__moveit__decorator_html_a9abb8884e7960d839647f77c78b27602"><div class="ttname"><a href="classWing__moveit__decorator.html#a9abb8884e7960d839647f77c78b27602">Wing_moveit_decorator::set_markers</a></div><div class="ttdeci">void set_markers(moveit_msgs::CollisionObject *markers)</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00020">wing_moveit_decorator.h:20</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_a0a10fa719ce7c2fc4d637f3b7efe2e6c"><div class="ttname"><a href="classWing__moveit__decorator.html#a0a10fa719ce7c2fc4d637f3b7efe2e6c">Wing_moveit_decorator::markers_</a></div><div class="ttdeci">moveit_msgs::CollisionObject * markers_</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00015">wing_moveit_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html"><div class="ttname"><a href="classWing__moveit__decorator.html">Wing_moveit_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00013">wing_moveit_decorator.h:13</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_a94dee8fbe873155ed5ed8b65c6189d90"><div class="ttname"><a href="classWing__moveit__decorator.html#a94dee8fbe873155ed5ed8b65c6189d90">Wing_moveit_decorator::markers</a></div><div class="ttdeci">moveit_msgs::CollisionObject * markers()</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00021">wing_moveit_decorator.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_ade982b05a137aa3f80b229f02211105e"><div class="ttname"><a href="classWing__moveit__decorator.html#ade982b05a137aa3f80b229f02211105e">Wing_moveit_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8cpp_source.html#l00003">wing_moveit_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_acd889db54302763f1e578fc2c0b80677"><div class="ttname"><a href="classWing__moveit__decorator.html#acd889db54302763f1e578fc2c0b80677">Wing_moveit_decorator::Wing_moveit_decorator</a></div><div class="ttdeci">Wing_moveit_decorator(Abstract_robot_element *next)</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8h_source.html#l00019">wing_moveit_decorator.h:19</a></div></div>
+<div class="ttc" id="aclassWing__moveit__decorator_html_a9654fdfeffcf5f1f1fd2f87b267c562b"><div class="ttname"><a href="classWing__moveit__decorator.html#a9654fdfeffcf5f1f1fd2f87b267c562b">Wing_moveit_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="wing__moveit__decorator_8cpp_source.html#l00010">wing_moveit_decorator.cpp:10</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__reader_8cpp.html b/doc/html/wing__reader_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..eefa1ee4a754594ee886383cdcdfd7f142f07771
--- /dev/null
+++ b/doc/html/wing__reader_8cpp.html
@@ -0,0 +1,58 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_reader.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_reader.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="wing__reader_8h_source.html">reader/wing_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_reader.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__reader_8cpp__incl.png" border="0" usemap="#wing__reader_8cpp" alt=""/></div>
+<map name="wing__reader_8cpp" id="wing__reader_8cpp">
+<area shape="rect" title=" " alt="" coords="197,5,327,32"/>
+<area shape="rect" href="wing__reader_8h.html" title=" " alt="" coords="182,80,342,107"/>
+<area shape="rect" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" title=" " alt="" coords="419,244,579,285"/>
+</map>
+</div>
+</div>
+<p><a href="wing__reader_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__reader_8cpp__incl.map b/doc/html/wing__reader_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..37ab55dbdfa0fb2b684dd4ab47614d48cebb7020
--- /dev/null
+++ b/doc/html/wing__reader_8cpp__incl.map
@@ -0,0 +1,13 @@
+<map id="wing_reader.cpp" name="wing_reader.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="197,5,327,32"/>
+<area shape="rect" id="node2" href="$wing__reader_8h.html" title=" " alt="" coords="182,80,342,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,251,84,278"/>
+<area shape="rect" id="node4" title=" " alt="" coords="108,251,221,278"/>
+<area shape="rect" id="node5" title=" " alt="" coords="246,251,395,278"/>
+<area shape="rect" id="node6" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,155,585,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="604,251,803,278"/>
+<area shape="rect" id="node8" title=" " alt="" coords="827,251,959,278"/>
+<area shape="rect" id="node9" title=" " alt="" coords="983,251,1056,278"/>
+<area shape="rect" id="node10" title=" " alt="" coords="1081,251,1139,278"/>
+<area shape="rect" id="node11" title=" " alt="" coords="419,244,579,285"/>
+</map>
diff --git a/doc/html/wing__reader_8cpp__incl.md5 b/doc/html/wing__reader_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e2cec4433ed50de4fdfa2d0a30b16d783d53996b
--- /dev/null
+++ b/doc/html/wing__reader_8cpp__incl.md5
@@ -0,0 +1 @@
+0774ca1cd7e04968e022764ef0707c3f
\ No newline at end of file
diff --git a/doc/html/wing__reader_8cpp__incl.png b/doc/html/wing__reader_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..51663eec4a3ac908585c2555285b0456eef47ebe
Binary files /dev/null and b/doc/html/wing__reader_8cpp__incl.png differ
diff --git a/doc/html/wing__reader_8cpp_source.html b/doc/html/wing__reader_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec5f339d6ea17264d227b02c80c1d48d0df83ab9
--- /dev/null
+++ b/doc/html/wing__reader_8cpp_source.html
@@ -0,0 +1,213 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_reader.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_af89b2be539cdaaafaad341d1e56977e.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_reader.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__reader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__reader_8h.html">reader/wing_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader::read</a>(){</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    XmlRpc::XmlRpcValue resources;</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <a class="code" href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">nh_</a>-&gt;getParam(<span class="stringliteral">&quot;/objects&quot;</span>, resources);</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;    std::regex rx(<span class="stringliteral">&quot;table([0-9]+)_table_top&quot;</span>);</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    std::smatch match;</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    std::map&lt;const std::string, std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt; map;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;    ROS_INFO(<span class="stringliteral">&quot;--- WING_READER ---&quot;</span>);</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;      <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;          std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;          <span class="keywordflow">if</span>(std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;              std::stringstream ss;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;              ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;              std::vector&lt;object_data&gt; wd;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;              wd.push_back({<span class="stringliteral">&quot;&quot;</span>, tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;              wd.push_back({<span class="stringliteral">&quot;&quot;</span>, tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;              wd.push_back({<span class="stringliteral">&quot;&quot;</span>, tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;              map.insert(std::pair&lt;<span class="keyword">const</span> std::string, std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;(ss.str(), {wd, 0}));</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;          }</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;      }</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    } <span class="keywordflow">catch</span> (<span class="keyword">const</span> XmlRpc::XmlRpcException&amp; xre) {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Iteration error in Blueprint initialization&quot;</span>);</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;      ros::shutdown();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    }</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    rx.assign(<span class="stringliteral">&quot;table([0-9]+)_right_panel&quot;</span>);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;      <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;          std::stringstream ss;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;          ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: description found, loading...&quot;</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;          tf2::Vector3 pos;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;          tf2::Vector3 size;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;          tf2::Quaternion rot;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>]) + size.getZ()/2) :pos.setZ(0);</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;--- Wing %s ---&quot;</span>, str.c_str());</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;          <span class="keywordflow">try</span> {</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;            map.at(ss.str()).first[0].name_ = str.c_str();</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;            map.at(ss.str()).first[0].pose_ = tf2::Transform(rot.normalized(), pos);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;            map.at(ss.str()).first[0].size_ = size;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;            map.at(ss.str()).second += std::pow(2, 0);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;          } <span class="keywordflow">catch</span> (<span class="keyword">const</span> std::out_of_range&amp; oor) {</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;Found panel for unknown robot&quot;</span>);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;          }</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        }</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;      }</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    } <span class="keywordflow">catch</span> (<span class="keyword">const</span> XmlRpc::XmlRpcException&amp; xre){</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Iteration error in right panel search&quot;</span>);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;      ros::shutdown();</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    }</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    rx.assign(<span class="stringliteral">&quot;table([0-9]+)_front_panel&quot;</span>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="keywordflow">try</span> {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;      <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;          std::stringstream ss;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;          ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160; </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: description found, loading...&quot;</span>);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;          tf2::Vector3 pos;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;          tf2::Vector3 size;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;          tf2::Quaternion rot;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;          </div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>]) + size.getZ()/2) :pos.setZ(0);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160; </div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;--- Wing %s ---&quot;</span>, str.c_str());</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;          <span class="keywordflow">try</span> {</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;            map.at(ss.str()).first[1].name_ = str.c_str();</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;            map.at(ss.str()).first[1].pose_ = tf2::Transform(rot.normalized(), pos);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;            map.at(ss.str()).first[1].size_ = size;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;            map.at(ss.str()).second += std::pow(2, 1);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;          } <span class="keywordflow">catch</span> (<span class="keyword">const</span> std::out_of_range&amp; oor) {</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;Found panel for unknown robot&quot;</span>);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;          }</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        }</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;      }</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    } <span class="keywordflow">catch</span>(<span class="keyword">const</span> XmlRpc::XmlRpcException&amp; xre){</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Iteration error in front panel search&quot;</span>);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;      ros::shutdown();</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    }</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    rx.assign(<span class="stringliteral">&quot;table([0-9]+)_left_panel&quot;</span>);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keywordflow">try</span>{</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;      <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; resources.size(); i++){</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        std::string str = resources[i][<span class="stringliteral">&quot;id&quot;</span>];</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <span class="keywordflow">if</span> (std::regex_match(str, match, rx)){</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;          std::stringstream ss;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;          ss &lt;&lt; <span class="stringliteral">&quot;panda_arm&quot;</span> &lt;&lt; match[1].str().c_str();</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: description found, loading...&quot;</span>);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;          tf2::Vector3 pos;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;          tf2::Vector3 size;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;          tf2::Quaternion rot;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160; </div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;          </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;length&quot;</span>)) ? size.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;length&quot;</span>])) :size.setX(0);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;width&quot;</span>)) ? size.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;width&quot;</span>])) :size.setY(0);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;          (resources[i][<span class="stringliteral">&quot;size&quot;</span>].hasMember(<span class="stringliteral">&quot;height&quot;</span>)) ? size.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;size&quot;</span>][<span class="stringliteral">&quot;height&quot;</span>])) :size.setZ(0);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? pos.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :pos.setX(0);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? pos.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :pos.setY(0);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;          (resources[i][<span class="stringliteral">&quot;pos&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? pos.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;pos&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>]) + size.getZ()/2) :pos.setZ(0);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;x&quot;</span>)) ? rot.setX(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;x&quot;</span>])) :rot.setX(0);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;y&quot;</span>)) ? rot.setY(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;y&quot;</span>])) :rot.setY(0);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;z&quot;</span>)) ? rot.setZ(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;z&quot;</span>])) :rot.setZ(0);</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;          (resources[i][<span class="stringliteral">&quot;orientation&quot;</span>].hasMember(<span class="stringliteral">&quot;w&quot;</span>)) ? rot.setW(<a class="code" href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">float_of</a>(resources[i][<span class="stringliteral">&quot;orientation&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>])) :rot.setW(0);</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;--- Wing %s ---&quot;</span>, str.c_str());</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: pos(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, pos.getX(), pos.getY(), pos.getZ());</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: orientation(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, rot.getX(), rot.getY(), rot.getZ(), rot.getW());</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;          ROS_INFO(<span class="stringliteral">&quot;=&gt; WING: size(&#39;%f&#39;, &#39;%f&#39;, &#39;%f&#39;)&quot;</span>, size.getX(), size.getY(), size.getZ());</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160; </div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;          <span class="keywordflow">try</span> {</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;            map.at(ss.str()).first[2].name_ = str.c_str();</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;            map.at(ss.str()).first[2].pose_ = tf2::Transform(rot.normalized(), pos);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;            map.at(ss.str()).first[2].size_ = size;</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;            map.at(ss.str()).second += std::pow(2, 2);</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;          } <span class="keywordflow">catch</span> (<span class="keyword">const</span> std::out_of_range&amp; oor) {</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;            ROS_INFO(<span class="stringliteral">&quot;Found panel for unknown robot&quot;</span>);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;          }</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        }</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;      }</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    } <span class="keywordflow">catch</span>(<span class="keyword">const</span> XmlRpc::XmlRpcException&amp; xre){</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;      ROS_INFO(<span class="stringliteral">&quot;Iteration error in left panel search&quot;</span>);</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;      ros::shutdown();</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    }</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    <a class="code" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">set_wing_data</a>(map);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;}</div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__reader_html_a3e05444708c755a2aefe43a0bc8fb04a"><div class="ttname"><a href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">Wing_reader::set_wing_data</a></div><div class="ttdeci">void set_wing_data(std::map&lt; const std::string, std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wing_data)</div><div class="ttdoc">Set wing data.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00030">wing_reader.h:30</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_ac68dac5298b2c065773ba8412a134949"><div class="ttname"><a href="classAbstract__param__reader.html#ac68dac5298b2c065773ba8412a134949">Abstract_param_reader::nh_</a></div><div class="ttdeci">std::shared_ptr&lt; ros::NodeHandle &gt; nh_</div><div class="ttdoc">ROS Nodehandle.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00029">abstract_param_reader.h:29</a></div></div>
+<div class="ttc" id="awing__reader_8h_html"><div class="ttname"><a href="wing__reader_8h.html">wing_reader.h</a></div></div>
+<div class="ttc" id="aclassWing__reader_html_a5176dcdf48c2f44bdab3cfedd6e94c4c"><div class="ttname"><a href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8cpp_source.html#l00003">wing_reader.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html_a107d1be3e232087e003820c9a924b2dd"><div class="ttname"><a href="classAbstract__param__reader.html#a107d1be3e232087e003820c9a924b2dd">Abstract_param_reader::float_of</a></div><div class="ttdeci">float float_of(XmlRpc::XmlRpcValue &amp;val)</div><div class="ttdoc">Xmlrpc parser.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8cpp_source.html#l00003">abstract_param_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__reader_8h.html b/doc/html/wing__reader_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d95438b88e6e862f901a67253543496e172a9ef
--- /dev/null
+++ b/doc/html/wing__reader_8h.html
@@ -0,0 +1,94 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_reader.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">wing_reader.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &lt;ros/package.h&gt;</code><br />
+<code>#include &lt;xmlrpcpp/XmlRpc.h&gt;</code><br />
+<code>#include &quot;<a class="el" href="abstract__param__reader_8h_source.html">reader/abstract_param_reader.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_reader.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__reader_8h__incl.png" border="0" usemap="#wing__reader_8h" alt=""/></div>
+<map name="wing__reader_8h" id="wing__reader_8h">
+<area shape="rect" title=" " alt="" coords="205,5,319,32"/>
+<area shape="rect" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" href="abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" title=" " alt="" coords="419,169,579,211"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__reader_8h__dep__incl.png" border="0" usemap="#wing__reader_8hdep" alt=""/></div>
+<map name="wing__reader_8hdep" id="wing__reader_8hdep">
+<area shape="rect" title=" " alt="" coords="975,5,1089,32"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="521,80,674,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="5,237,139,263"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="671,319,839,345"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="747,237,872,263"/>
+<area shape="rect" href="mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1138,80,1291,107"/>
+<area shape="rect" href="base__calculation__mediator_8h.html" title=" " alt="" coords="999,155,1209,181"/>
+<area shape="rect" href="robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="1247,229,1419,271"/>
+<area shape="rect" href="wing__reader_8cpp.html" title=" " alt="" coords="1527,80,1657,107"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="171,155,264,181"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="296,237,485,263"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="433,155,580,181"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="604,155,772,181"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="163,237,271,263"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="289,319,493,345"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="561,237,722,263"/>
+<area shape="rect" href="mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="1284,155,1452,181"/>
+<area shape="rect" href="base__calculation__mediator_8cpp.html" title=" " alt="" coords="999,237,1223,263"/>
+</map>
+</div>
+</div>
+<p><a href="wing__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__reader.html">Wing_reader</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classWing.html">Wing</a> reader.  <a href="classWing__reader.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__reader_8h__dep__incl.map b/doc/html/wing__reader_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..9c836ff5622b42be0712b890f8428fa934c8eae3
--- /dev/null
+++ b/doc/html/wing__reader_8h__dep__incl.map
@@ -0,0 +1,20 @@
+<map id="wing_reader.h" name="wing_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="975,5,1089,32"/>
+<area shape="rect" id="node2" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="521,80,674,107"/>
+<area shape="rect" id="node4" href="$base__routine_8cpp.html" title=" " alt="" coords="5,237,139,263"/>
+<area shape="rect" id="node7" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="671,319,839,345"/>
+<area shape="rect" id="node10" href="$cell__routine_8cpp.html" title=" " alt="" coords="747,237,872,263"/>
+<area shape="rect" id="node13" href="$mediator_2abstract__mediator_8h.html" title=" " alt="" coords="1138,80,1291,107"/>
+<area shape="rect" id="node14" href="$base__calculation__mediator_8h.html" title=" " alt="" coords="999,155,1209,181"/>
+<area shape="rect" id="node16" href="$robot__base__calculation__approach_8cpp.html" title=" " alt="" coords="1247,229,1419,271"/>
+<area shape="rect" id="node18" href="$wing__reader_8cpp.html" title=" " alt="" coords="1527,80,1657,107"/>
+<area shape="rect" id="node3" href="$mediator_8h.html" title=" " alt="" coords="171,155,264,181"/>
+<area shape="rect" id="node6" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="296,237,485,263"/>
+<area shape="rect" id="node9" href="$moveit__mediator_8h.html" title=" " alt="" coords="433,155,580,181"/>
+<area shape="rect" id="node12" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="604,155,772,181"/>
+<area shape="rect" id="node5" href="$mediator_8cpp.html" title=" " alt="" coords="163,237,271,263"/>
+<area shape="rect" id="node8" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="289,319,493,345"/>
+<area shape="rect" id="node11" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="561,237,722,263"/>
+<area shape="rect" id="node17" href="$mediator_2abstract__mediator_8cpp.html" title=" " alt="" coords="1284,155,1452,181"/>
+<area shape="rect" id="node15" href="$base__calculation__mediator_8cpp.html" title=" " alt="" coords="999,237,1223,263"/>
+</map>
diff --git a/doc/html/wing__reader_8h__dep__incl.md5 b/doc/html/wing__reader_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..59c0c5def361253f000dd13c0d30c2a31f95e020
--- /dev/null
+++ b/doc/html/wing__reader_8h__dep__incl.md5
@@ -0,0 +1 @@
+9adc3d987c732406720eeff73edf4940
\ No newline at end of file
diff --git a/doc/html/wing__reader_8h__dep__incl.png b/doc/html/wing__reader_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..c88ece701d2e98dc0f86035aef629334882262fd
Binary files /dev/null and b/doc/html/wing__reader_8h__dep__incl.png differ
diff --git a/doc/html/wing__reader_8h__incl.map b/doc/html/wing__reader_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..09ac4ef868a0531574b2b32f7d97fd8f6ff81d50
--- /dev/null
+++ b/doc/html/wing__reader_8h__incl.map
@@ -0,0 +1,12 @@
+<map id="wing_reader.h" name="wing_reader.h">
+<area shape="rect" id="node1" title=" " alt="" coords="205,5,319,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,177,84,203"/>
+<area shape="rect" id="node3" title=" " alt="" coords="108,177,221,203"/>
+<area shape="rect" id="node4" title=" " alt="" coords="246,177,395,203"/>
+<area shape="rect" id="node5" href="$abstract__param__reader_8h.html" title=" " alt="" coords="414,80,585,121"/>
+<area shape="rect" id="node6" title=" " alt="" coords="604,177,803,203"/>
+<area shape="rect" id="node7" title=" " alt="" coords="827,177,959,203"/>
+<area shape="rect" id="node8" title=" " alt="" coords="983,177,1056,203"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1081,177,1139,203"/>
+<area shape="rect" id="node10" title=" " alt="" coords="419,169,579,211"/>
+</map>
diff --git a/doc/html/wing__reader_8h__incl.md5 b/doc/html/wing__reader_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..218b2168e8d829fafb6db8cdef44c017f131063b
--- /dev/null
+++ b/doc/html/wing__reader_8h__incl.md5
@@ -0,0 +1 @@
+636392e9629d9cdcfebd9fb8b7da90f8
\ No newline at end of file
diff --git a/doc/html/wing__reader_8h__incl.png b/doc/html/wing__reader_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..23ba1362560e9c895a86ebebac07949dd9f8ba82
Binary files /dev/null and b/doc/html/wing__reader_8h__incl.png differ
diff --git a/doc/html/wing__reader_8h_source.html b/doc/html/wing__reader_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b633c8f2400bb487fc2b0708de1ed735291fec3d
--- /dev/null
+++ b/doc/html/wing__reader_8h_source.html
@@ -0,0 +1,72 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_reader.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_d3e03ffc02fed53d32bf903a9bb2267d.html">reader</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_reader.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef WING_READER_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define WING_READER_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;ros/package.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;xmlrpcpp/XmlRpc.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160; </div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="abstract__param__reader_8h.html">reader/abstract_param_reader.h</a>&quot;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classWing__reader.html">   14</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWing__reader.html">Wing_reader</a> : <span class="keyword">public</span> <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>{</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">   16</a></span>&#160;    std::map&lt;const std::string, std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt; <a class="code" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">wing_data_</a>;  </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">   24</a></span>&#160;    <a class="code" href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader</a>(std::shared_ptr&lt;ros::NodeHandle&gt; <span class="keyword">const</span>&amp; d) : <a class="code" href="classAbstract__param__reader.html">Abstract_param_reader</a>(d){<a class="code" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">read</a>();}</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160; </div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">   30</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">set_wing_data</a>(std::map&lt;<span class="keyword">const</span> std::string, std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; <a class="code" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a>) {<a class="code" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">wing_data_</a> = <a class="code" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a>;}</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; </div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">   36</a></span>&#160;    <span class="keyword">inline</span> std::map&lt;const std::string, std::pair&lt;std::vector&lt;object_data&gt;, <span class="keywordtype">int</span>&gt;&gt;&amp; <a class="code" href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">wing_data</a>() {<span class="keywordflow">return</span> <a class="code" href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">wing_data_</a>;}</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">read</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;};</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__reader_html_a3e05444708c755a2aefe43a0bc8fb04a"><div class="ttname"><a href="classWing__reader.html#a3e05444708c755a2aefe43a0bc8fb04a">Wing_reader::set_wing_data</a></div><div class="ttdeci">void set_wing_data(std::map&lt; const std::string, std::pair&lt; std::vector&lt; object_data &gt;, int &gt;&gt; &amp;wing_data)</div><div class="ttdoc">Set wing data.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00030">wing_reader.h:30</a></div></div>
+<div class="ttc" id="aclassWing__reader_html"><div class="ttname"><a href="classWing__reader.html">Wing_reader</a></div><div class="ttdoc">Wing reader.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00014">wing_reader.h:14</a></div></div>
+<div class="ttc" id="aabstract__param__reader_8h_html"><div class="ttname"><a href="abstract__param__reader_8h.html">abstract_param_reader.h</a></div></div>
+<div class="ttc" id="aclassWing__reader_html_af5dbd133afcbd8f2f929d94b93ac0e0b"><div class="ttname"><a href="classWing__reader.html#af5dbd133afcbd8f2f929d94b93ac0e0b">Wing_reader::wing_data_</a></div><div class="ttdeci">std::map&lt; const std::string, std::pair&lt; std::vector&lt; object_data &gt;, int &gt; &gt; wing_data_</div><div class="ttdoc">Mask and object data mapped to robot.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00016">wing_reader.h:16</a></div></div>
+<div class="ttc" id="aclassWing__reader_html_a248e697daf6a744470b310338f790ebc"><div class="ttname"><a href="classWing__reader.html#a248e697daf6a744470b310338f790ebc">Wing_reader::wing_data</a></div><div class="ttdeci">std::map&lt; const std::string, std::pair&lt; std::vector&lt; object_data &gt;, int &gt; &gt; &amp; wing_data()</div><div class="ttdoc">Get wing data.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00036">wing_reader.h:36</a></div></div>
+<div class="ttc" id="aclassWing__reader_html_a98abb7d49525f6a3832bdd1a8d4e3e3c"><div class="ttname"><a href="classWing__reader.html#a98abb7d49525f6a3832bdd1a8d4e3e3c">Wing_reader::Wing_reader</a></div><div class="ttdeci">Wing_reader(std::shared_ptr&lt; ros::NodeHandle &gt; const &amp;d)</div><div class="ttdoc">Wing reader constructor.</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8h_source.html#l00024">wing_reader.h:24</a></div></div>
+<div class="ttc" id="aclassAbstract__param__reader_html"><div class="ttname"><a href="classAbstract__param__reader.html">Abstract_param_reader</a></div><div class="ttdoc">Abstract ROS-Param reader class.</div><div class="ttdef"><b>Definition:</b> <a href="abstract__param__reader_8h_source.html#l00027">abstract_param_reader.h:27</a></div></div>
+<div class="ttc" id="aclassWing__reader_html_a5176dcdf48c2f44bdab3cfedd6e94c4c"><div class="ttname"><a href="classWing__reader.html#a5176dcdf48c2f44bdab3cfedd6e94c4c">Wing_reader::read</a></div><div class="ttdeci">void read() override</div><div class="ttdoc">read implementatin</div><div class="ttdef"><b>Definition:</b> <a href="wing__reader_8cpp_source.html#l00003">wing_reader.cpp:3</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__rviz__decorator_8cpp.html b/doc/html/wing__rviz__decorator_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..a22930e6cceb844aa8a554b82570035afc4bef13
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8cpp.html
@@ -0,0 +1,56 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_rviz_decorator.cpp File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_rviz_decorator.cpp File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="wing__rviz__decorator_8h_source.html">impl/wing_rviz_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_rviz_decorator.cpp:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__rviz__decorator_8cpp__incl.png" border="0" usemap="#wing__rviz__decorator_8cpp" alt=""/></div>
+<map name="wing__rviz__decorator_8cpp" id="wing__rviz__decorator_8cpp">
+<area shape="rect" title=" " alt="" coords="67,5,247,32"/>
+<area shape="rect" href="wing__rviz__decorator_8h.html" title=" " alt="" coords="58,80,256,107"/>
+<area shape="rect" title=" " alt="" coords="46,341,124,367"/>
+<area shape="rect" title=" " alt="" coords="342,155,489,196"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="30,162,129,189"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="154,155,318,196"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="161,244,310,285"/>
+<area shape="rect" title=" " alt="" coords="327,341,526,367"/>
+<area shape="rect" title=" " alt="" coords="156,333,302,375"/>
+</map>
+</div>
+</div>
+<p><a href="wing__rviz__decorator_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__rviz__decorator_8cpp__incl.map b/doc/html/wing__rviz__decorator_8cpp__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..20fe17d6503abe42238b3317e1ee6feceaf028f0
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8cpp__incl.map
@@ -0,0 +1,11 @@
+<map id="wing_rviz_decorator.cpp" name="wing_rviz_decorator.cpp">
+<area shape="rect" id="node1" title=" " alt="" coords="67,5,247,32"/>
+<area shape="rect" id="node2" href="$wing__rviz__decorator_8h.html" title=" " alt="" coords="58,80,256,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="46,341,124,367"/>
+<area shape="rect" id="node4" title=" " alt="" coords="342,155,489,196"/>
+<area shape="rect" id="node5" href="$wing_8h.html" title=" " alt="" coords="30,162,129,189"/>
+<area shape="rect" id="node9" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="154,155,318,196"/>
+<area shape="rect" id="node6" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="161,244,310,285"/>
+<area shape="rect" id="node7" title=" " alt="" coords="327,341,526,367"/>
+<area shape="rect" id="node8" title=" " alt="" coords="156,333,302,375"/>
+</map>
diff --git a/doc/html/wing__rviz__decorator_8cpp__incl.md5 b/doc/html/wing__rviz__decorator_8cpp__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..e7fc9b9ec0312766387652b0eac65d35687dae34
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8cpp__incl.md5
@@ -0,0 +1 @@
+c9546566525609119b6498101a2141ee
\ No newline at end of file
diff --git a/doc/html/wing__rviz__decorator_8cpp__incl.png b/doc/html/wing__rviz__decorator_8cpp__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..e9d59ba2b0d92fcfb290e3e1f75dae77e956c86b
Binary files /dev/null and b/doc/html/wing__rviz__decorator_8cpp__incl.png differ
diff --git a/doc/html/wing__rviz__decorator_8cpp_source.html b/doc/html/wing__rviz__decorator_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d09fb651c3af7752f17a305a329c909f7b279dc8
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8cpp_source.html
@@ -0,0 +1,137 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_rviz_decorator.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_3808e3f8fe545b07b1d2715928fb0eea.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_rviz_decorator.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__rviz__decorator_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing__rviz__decorator_8h.html">impl/wing_rviz_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">    3</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator::update</a>(tf2::Transform&amp; tf) {</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <span class="comment">//input_filter(tf);</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;    <a class="code" href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a>(tf);</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">output_filter</a>();</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;}</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#a1a96d6aa2f86b5b187b7a55a8c604722">    9</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Wing_rviz_decorator::input_filter</a>(tf2::Transform&amp; tf) {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    tf2::Vector3 world_origin = tf.getOrigin();</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;    tf2::Quaternion world_quat = tf.getRotation().normalized();</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;    visualization_msgs::Marker marker;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    marker.header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;    marker.header.stamp = ros::Time();</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;    marker.ns = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;    marker.id = 1;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    marker.type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    marker.action = visualization_msgs::Marker::ADD;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    marker.pose.position.x = world_origin.getX();</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    marker.pose.position.y = world_origin.getY();</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    marker.pose.position.z = world_origin.getZ();</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    marker.pose.orientation.x = world_quat.getX();</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    marker.pose.orientation.y = world_quat.getY();</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    marker.pose.orientation.z = world_quat.getZ();</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    marker.pose.orientation.w = world_quat.getW();</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    marker.scale.x = 0.8f;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    marker.scale.y = 0.8f;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    marker.scale.z = 0.885f;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    marker.color.r = 1.0;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    marker.color.g = 1.0;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    marker.color.b = 1.0;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    marker.color.a = 1.0; <span class="comment">// Don&#39;t forget to set the alpha</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;}</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">   36</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator::output_filter</a>() {</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <a class="code" href="classWing.html">Wing</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a> = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classWing.html">Wing</a>*<span class="keyword">&gt;</span> (<a class="code" href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">next_</a>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    tf2::Vector3 world_origin = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getOrigin();</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    tf2::Quaternion world_quat = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">world_tf</a>().getRotation().normalized();</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;header.frame_id = <span class="stringliteral">&quot;map&quot;</span>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;header.stamp = ros::Time();</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;ns = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">name</a>();</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;id = 1;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;type = visualization_msgs::Marker::CUBE;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;action = visualization_msgs::Marker::MODIFY;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.position.x = world_origin.getX();</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.position.y = world_origin.getY();</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.position.z = world_origin.getZ();</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.orientation.x = world_quat.getX();</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.orientation.y = world_quat.getY();</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.orientation.z = world_quat.getZ();</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;pose.orientation.w = world_quat.getW();</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;scale.x = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getX();</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;scale.y = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getY();</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;scale.z = <a class="code" href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">wing</a>-&gt;<a class="code" href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">size</a>().getZ();</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;color.r = 1.0;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;color.g = 1.0;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;color.b = 1.0;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>-&gt;color.a = 1.0; <span class="comment">// Don&#39;t forget to set the alpha!</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="comment">/*</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">    visualization_msgs::Marker bounds;</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">    bounds.header.frame_id = &quot;map&quot;;</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">    bounds.header.stamp = ros::Time();</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">    bounds.ns = &quot;bounds&quot;;</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">    bounds.id = *((int*)(&amp;wing));</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">    bounds.type = visualization_msgs::Marker::POINTS;</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">    bounds.action = visualization_msgs::Marker::MODIFY;</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">    bounds.scale.x = 0.01f;</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">    bounds.scale.y = 0.01f;</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">    bounds.scale.z = 0.01f;</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">    bounds.color.r = 0.0;</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">    bounds.color.g = 0.0;</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">    bounds.color.b = 1.0;</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment">    bounds.color.a = 1.0;</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">    bounds.pose.orientation.w = 1;</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">    for (long unsigned int i = 0; i &lt; wing-&gt;bounds().size(); i++){</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">        tf2::Transform point_posistion = wing-&gt;world_tf() * wing-&gt;bounds()[i];</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">        geometry_msgs::Point point;</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">        point.x = point_posistion.getOrigin().getX();</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">        point.y = point_posistion.getOrigin().getY();</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">        point.z = point_posistion.getOrigin().getZ();</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">        bounds.points.push_back(point);</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="comment">    }</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">    */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;}</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160; </div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__rviz__decorator_html_ac2a0e83684cdab21c225699fab4b56f7"><div class="ttname"><a href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8cpp_source.html#l00036">wing_rviz_decorator.cpp:36</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a910a29582a54972c947fa57bbdc444ec"><div class="ttname"><a href="classAbstract__robot__element.html#a910a29582a54972c947fa57bbdc444ec">Abstract_robot_element::name</a></div><div class="ttdeci">virtual std::string &amp; name()=0</div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_af5dce35a8439a2f1c5037cc3dc6d434e"><div class="ttname"><a href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8cpp_source.html#l00003">wing_rviz_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a2eb0ca7627bba7b58e85046532e68269"><div class="ttname"><a href="classAbstract__robot__element.html#a2eb0ca7627bba7b58e85046532e68269">Abstract_robot_element::size</a></div><div class="ttdeci">virtual tf2::Vector3 &amp; size()=0</div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a9138c650f2148d515802a89f079ace2f"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a9138c650f2148d515802a89f079ace2f">Abstract_robot_element_decorator::wing</a></div><div class="ttdeci">Abstract_robot_element * wing()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00015">impl/abstract_robot_element_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_a9b7cdc7830647d8c6005414b2694cdf5"><div class="ttname"><a href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">Wing_rviz_decorator::marker_</a></div><div class="ttdeci">visualization_msgs::Marker * marker_</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00011">wing_rviz_decorator.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_addab3f179d202bea3da80887206c8048"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#addab3f179d202bea3da80887206c8048">Abstract_robot_element_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00017">impl/abstract_robot_element_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ab7fe1d6234cc937bf72a2f951781329b"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ab7fe1d6234cc937bf72a2f951781329b">Abstract_robot_element_decorator::next_</a></div><div class="ttdeci">Abstract_robot_element * next_</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00009">impl/abstract_robot_element_decorator.h:9</a></div></div>
+<div class="ttc" id="awing__rviz__decorator_8h_html"><div class="ttname"><a href="wing__rviz__decorator_8h.html">wing_rviz_decorator.h</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html_a99d0cb9e273cdfb373d4c974529b1ad6"><div class="ttname"><a href="classAbstract__robot__element.html#a99d0cb9e273cdfb373d4c974529b1ad6">Abstract_robot_element::world_tf</a></div><div class="ttdeci">tf2::Transform &amp; world_tf()</div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00021">impl/abstract_robot_element.h:21</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="aclassWing_html"><div class="ttname"><a href="classWing.html">Wing</a></div><div class="ttdef"><b>Definition:</b> <a href="wing_8h_source.html#l00007">wing.h:7</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__rviz__decorator_8h.html b/doc/html/wing__rviz__decorator_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..bafcfe541a95539fd4616254d0d6a5f3e1300c22
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h.html
@@ -0,0 +1,89 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_rviz_decorator.h File Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<div class="title">wing_rviz_decorator.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;ros/ros.h&quot;</code><br />
+<code>#include &quot;visualization_msgs/Marker.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="wing_8h_source.html">impl/wing.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="impl_2abstract__robot__element__decorator_8h_source.html">impl/abstract_robot_element_decorator.h</a>&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for wing_rviz_decorator.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__rviz__decorator_8h__incl.png" border="0" usemap="#wing__rviz__decorator_8h" alt=""/></div>
+<map name="wing__rviz__decorator_8h" id="wing__rviz__decorator_8h">
+<area shape="rect" title=" " alt="" coords="74,5,240,32"/>
+<area shape="rect" title=" " alt="" coords="46,266,124,293"/>
+<area shape="rect" title=" " alt="" coords="342,80,489,121"/>
+<area shape="rect" href="wing_8h.html" title=" " alt="" coords="30,87,129,114"/>
+<area shape="rect" href="impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="154,80,318,121"/>
+<area shape="rect" href="impl_2abstract__robot__element_8h.html" title=" " alt="" coords="161,169,310,211"/>
+<area shape="rect" title=" " alt="" coords="327,266,526,293"/>
+<area shape="rect" title=" " alt="" coords="156,259,302,300"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="wing__rviz__decorator_8h__dep__incl.png" border="0" usemap="#wing__rviz__decorator_8hdep" alt=""/></div>
+<map name="wing__rviz__decorator_8hdep" id="wing__rviz__decorator_8hdep">
+<area shape="rect" title=" " alt="" coords="936,5,1101,32"/>
+<area shape="rect" href="robot_8h.html" title=" " alt="" coords="674,80,742,107"/>
+<area shape="rect" href="base__routine_8cpp.html" title=" " alt="" coords="794,304,928,331"/>
+<area shape="rect" href="mediator_8cpp.html" title=" " alt="" coords="971,304,1079,331"/>
+<area shape="rect" href="wing__rviz__decorator_8cpp.html" title=" " alt="" coords="1082,80,1262,107"/>
+<area shape="rect" href="impl_2abstract__mediator_8h.html" title=" " alt="" coords="471,155,624,181"/>
+<area shape="rect" href="mediator_8h.html" title=" " alt="" coords="862,229,956,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8h.html" title=" " alt="" coords="468,304,657,331"/>
+<area shape="rect" href="moveit__mediator_8h.html" title=" " alt="" coords="246,229,393,256"/>
+<area shape="rect" href="moveit__robot_8h.html" title=" " alt="" coords="146,155,267,181"/>
+<area shape="rect" href="robot_8cpp.html" title=" " alt="" coords="705,155,788,181"/>
+<area shape="rect" href="grasp__cell__routine_8cpp.html" title=" " alt="" coords="296,379,464,405"/>
+<area shape="rect" href="cell__routine_8cpp.html" title=" " alt="" coords="30,304,156,331"/>
+<area shape="rect" href="impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="518,229,686,256"/>
+<area shape="rect" href="moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="488,379,692,405"/>
+<area shape="rect" href="moveit__mediator_8cpp.html" title=" " alt="" coords="180,304,342,331"/>
+</map>
+</div>
+</div>
+<p><a href="wing__rviz__decorator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/html/wing__rviz__decorator_8h__dep__incl.map b/doc/html/wing__rviz__decorator_8h__dep__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..33c954f2848d1006666626e7c698ca1d22e228de
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h__dep__incl.map
@@ -0,0 +1,18 @@
+<map id="wing_rviz_decorator.h" name="wing_rviz_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="936,5,1101,32"/>
+<area shape="rect" id="node2" href="$robot_8h.html" title=" " alt="" coords="674,80,742,107"/>
+<area shape="rect" id="node5" href="$base__routine_8cpp.html" title=" " alt="" coords="794,304,928,331"/>
+<area shape="rect" id="node6" href="$mediator_8cpp.html" title=" " alt="" coords="971,304,1079,331"/>
+<area shape="rect" id="node16" href="$wing__rviz__decorator_8cpp.html" title=" " alt="" coords="1082,80,1262,107"/>
+<area shape="rect" id="node3" href="$impl_2abstract__mediator_8h.html" title=" " alt="" coords="471,155,624,181"/>
+<area shape="rect" id="node4" href="$mediator_8h.html" title=" " alt="" coords="862,229,956,256"/>
+<area shape="rect" id="node7" href="$moveit__grasp__mediator_8h.html" title=" " alt="" coords="468,304,657,331"/>
+<area shape="rect" id="node10" href="$moveit__mediator_8h.html" title=" " alt="" coords="246,229,393,256"/>
+<area shape="rect" id="node14" href="$moveit__robot_8h.html" title=" " alt="" coords="146,155,267,181"/>
+<area shape="rect" id="node15" href="$robot_8cpp.html" title=" " alt="" coords="705,155,788,181"/>
+<area shape="rect" id="node8" href="$grasp__cell__routine_8cpp.html" title=" " alt="" coords="296,379,464,405"/>
+<area shape="rect" id="node11" href="$cell__routine_8cpp.html" title=" " alt="" coords="30,304,156,331"/>
+<area shape="rect" id="node13" href="$impl_2abstract__mediator_8cpp.html" title=" " alt="" coords="518,229,686,256"/>
+<area shape="rect" id="node9" href="$moveit__grasp__mediator_8cpp.html" title=" " alt="" coords="488,379,692,405"/>
+<area shape="rect" id="node12" href="$moveit__mediator_8cpp.html" title=" " alt="" coords="180,304,342,331"/>
+</map>
diff --git a/doc/html/wing__rviz__decorator_8h__dep__incl.md5 b/doc/html/wing__rviz__decorator_8h__dep__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7471f97948b20c477aa64c1aaae31973afb19aa4
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h__dep__incl.md5
@@ -0,0 +1 @@
+85c106e88926aba44d599316d3d69618
\ No newline at end of file
diff --git a/doc/html/wing__rviz__decorator_8h__dep__incl.png b/doc/html/wing__rviz__decorator_8h__dep__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..a8d43d15a898fe4f1d003b7c89cf6cf3e904934e
Binary files /dev/null and b/doc/html/wing__rviz__decorator_8h__dep__incl.png differ
diff --git a/doc/html/wing__rviz__decorator_8h__incl.map b/doc/html/wing__rviz__decorator_8h__incl.map
new file mode 100644
index 0000000000000000000000000000000000000000..4f1ecb3a11eea33345df098b8cf1bdcc63d1afe0
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h__incl.map
@@ -0,0 +1,10 @@
+<map id="wing_rviz_decorator.h" name="wing_rviz_decorator.h">
+<area shape="rect" id="node1" title=" " alt="" coords="74,5,240,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="46,266,124,293"/>
+<area shape="rect" id="node3" title=" " alt="" coords="342,80,489,121"/>
+<area shape="rect" id="node4" href="$wing_8h.html" title=" " alt="" coords="30,87,129,114"/>
+<area shape="rect" id="node8" href="$impl_2abstract__robot__element__decorator_8h.html" title=" " alt="" coords="154,80,318,121"/>
+<area shape="rect" id="node5" href="$impl_2abstract__robot__element_8h.html" title=" " alt="" coords="161,169,310,211"/>
+<area shape="rect" id="node6" title=" " alt="" coords="327,266,526,293"/>
+<area shape="rect" id="node7" title=" " alt="" coords="156,259,302,300"/>
+</map>
diff --git a/doc/html/wing__rviz__decorator_8h__incl.md5 b/doc/html/wing__rviz__decorator_8h__incl.md5
new file mode 100644
index 0000000000000000000000000000000000000000..0a7c75a30ac80d50e4cc47d119bbe9b3d29adabf
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h__incl.md5
@@ -0,0 +1 @@
+7dd15e65b48f29bfb15942a99a3bfa1c
\ No newline at end of file
diff --git a/doc/html/wing__rviz__decorator_8h__incl.png b/doc/html/wing__rviz__decorator_8h__incl.png
new file mode 100644
index 0000000000000000000000000000000000000000..44390d1c8ec0463dea77203243612c4b7604824a
Binary files /dev/null and b/doc/html/wing__rviz__decorator_8h__incl.png differ
diff --git a/doc/html/wing__rviz__decorator_8h_source.html b/doc/html/wing__rviz__decorator_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ffd924728c843ed725bcc4f02fa8db7b5a73ca3e
--- /dev/null
+++ b/doc/html/wing__rviz__decorator_8h_source.html
@@ -0,0 +1,74 @@
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<title>multi_cell_builder: wing_rviz_decorator.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<script type="text/javascript" src="jquery.js"></script>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_8f74abbdbad6e793f5da56469e42956a.html">impl</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">wing_rviz_decorator.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="wing__rviz__decorator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef WING_RVIZ_DECORATOR_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define WING_RVIZ_DECORATOR_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160; </div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &quot;ros/ros.h&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &quot;visualization_msgs/Marker.h&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wing_8h.html">impl/wing.h</a>&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="impl_2abstract__robot__element__decorator_8h.html">impl/abstract_robot_element_decorator.h</a>&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160; </div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html">    9</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWing__rviz__decorator.html">Wing_rviz_decorator</a>  : <span class="keyword">public</span> <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>{</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;    <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">   11</a></span>&#160;    visualization_msgs::Marker* <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a> = <span class="keyword">new</span> visualization_msgs::Marker();</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">   15</a></span>&#160;    <a class="code" href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator</a>(<a class="code" href="classAbstract__robot__element.html">Abstract_robot_element</a>* <a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>) : <a class="code" href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a>(<a class="code" href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">next</a>){};</div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">   16</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">set_markers</a>(visualization_msgs::Marker* <a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>) { <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>= <a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>;}</div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">   17</a></span>&#160;    <span class="keyword">inline</span> visualization_msgs::Marker* <a class="code" href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">markers</a>() { <span class="keywordflow">return</span> <a class="code" href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">marker_</a>;}</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">update</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">input_filter</a>(tf2::Transform&amp; tf) <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">output_filter</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;};</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160; </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<div class="ttc" id="aclassWing__rviz__decorator_html_a13ffcd407511d8812150f26b9b257806"><div class="ttname"><a href="classWing__rviz__decorator.html#a13ffcd407511d8812150f26b9b257806">Wing_rviz_decorator::Wing_rviz_decorator</a></div><div class="ttdeci">Wing_rviz_decorator(Abstract_robot_element *next)</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00015">wing_rviz_decorator.h:15</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_ac2a0e83684cdab21c225699fab4b56f7"><div class="ttname"><a href="classWing__rviz__decorator.html#ac2a0e83684cdab21c225699fab4b56f7">Wing_rviz_decorator::output_filter</a></div><div class="ttdeci">void output_filter() override</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8cpp_source.html#l00036">wing_rviz_decorator.cpp:36</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_ab14def4c2e63ce9036488b894e74c507"><div class="ttname"><a href="classWing__rviz__decorator.html#ab14def4c2e63ce9036488b894e74c507">Wing_rviz_decorator::set_markers</a></div><div class="ttdeci">void set_markers(visualization_msgs::Marker *markers)</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00016">wing_rviz_decorator.h:16</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html"><div class="ttname"><a href="classAbstract__robot__element__decorator.html">Abstract_robot_element_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element__decorator_8h_source.html#l00007">impl/abstract_robot_element_decorator.h:7</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_af5dce35a8439a2f1c5037cc3dc6d434e"><div class="ttname"><a href="classWing__rviz__decorator.html#af5dce35a8439a2f1c5037cc3dc6d434e">Wing_rviz_decorator::update</a></div><div class="ttdeci">void update(tf2::Transform &amp;tf) override</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8cpp_source.html#l00003">wing_rviz_decorator.cpp:3</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html"><div class="ttname"><a href="classWing__rviz__decorator.html">Wing_rviz_decorator</a></div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00009">wing_rviz_decorator.h:9</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_a9b7cdc7830647d8c6005414b2694cdf5"><div class="ttname"><a href="classWing__rviz__decorator.html#a9b7cdc7830647d8c6005414b2694cdf5">Wing_rviz_decorator::marker_</a></div><div class="ttdeci">visualization_msgs::Marker * marker_</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00011">wing_rviz_decorator.h:11</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_a87d8de36475ce19034a9728f545eb03e"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#a87d8de36475ce19034a9728f545eb03e">Abstract_robot_element_decorator::next</a></div><div class="ttdeci">Abstract_robot_element * next()</div><div class="ttdef"><b>Definition:</b> <a href="robot__element_2decorators_2abstract__robot__element__decorator_8h_source.html#l00018">robot_element/decorators/abstract_robot_element_decorator.h:18</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element_html"><div class="ttname"><a href="classAbstract__robot__element.html">Abstract_robot_element</a></div><div class="ttdef"><b>Definition:</b> <a href="impl_2abstract__robot__element_8h_source.html#l00009">impl/abstract_robot_element.h:9</a></div></div>
+<div class="ttc" id="aclassWing__rviz__decorator_html_a7f27d708e22c72dae7ec90c2f1f699b2"><div class="ttname"><a href="classWing__rviz__decorator.html#a7f27d708e22c72dae7ec90c2f1f699b2">Wing_rviz_decorator::markers</a></div><div class="ttdeci">visualization_msgs::Marker * markers()</div><div class="ttdef"><b>Definition:</b> <a href="wing__rviz__decorator_8h_source.html#l00017">wing_rviz_decorator.h:17</a></div></div>
+<div class="ttc" id="aclassAbstract__robot__element__decorator_html_ae6a83bd61665cc4e3692143e84f091e8"><div class="ttname"><a href="classAbstract__robot__element__decorator.html#ae6a83bd61665cc4e3692143e84f091e8">Abstract_robot_element_decorator::input_filter</a></div><div class="ttdeci">virtual void input_filter()=0</div></div>
+<div class="ttc" id="awing_8h_html"><div class="ttname"><a href="wing_8h.html">wing.h</a></div></div>
+<div class="ttc" id="aimpl_2abstract__robot__element__decorator_8h_html"><div class="ttname"><a href="impl_2abstract__robot__element__decorator_8h.html">abstract_robot_element_decorator.h</a></div></div>
+
+<br clear="all" />
+<hr size="1"><div style="align: right;">
+<a href="http://wiki.ros.org/multi_cell_builder">multi_cell_builder</a><br />
+Author(s): MA <matteo.aneddama@gmail.com></br />
+<small>autogenerated on Thu Jan 12 2023 23:45:43</small>
+</div>
+</body>
+</html>
diff --git a/doc/manifest.yaml b/doc/manifest.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..e282d981e25a69c5d156a831589f9af2a90882fa
--- /dev/null
+++ b/doc/manifest.yaml
@@ -0,0 +1,40 @@
+actions: []
+authors: MA <matteo.aneddama@gmail.com>
+brief: ''
+bugtracker: ''
+depends:
+- moveit_task_constructor_visualization
+- moveit_grasps
+- moveit_visual_tools
+- trajectory_msgs
+- moveit_grasps_filter
+- moveit_core
+- ccf
+- roslint
+- tf
+- filesystem
+- message_runtime
+- moveit_task_constructor_core
+- geometry_msgs
+- eigen_conversions
+- roscpp
+- message_generation
+- moveit_msgs
+- moveit_ros_planning_interface
+- moveit_task_constructor_capabilities
+- tf_conversions
+- rosparam_shortcuts
+- gb_grasp
+- catkin
+- std_msgs
+- moveit_ros_planning
+- pcl_ros
+- yaml-cpp
+description: hjbiubi
+license: BSD
+maintainers: MA <matteo.aneddama@gmail.com>
+msgs: []
+package_type: package
+repo_url: ''
+srvs: []
+url: ''
diff --git a/include/bridge/abstract_base.h b/include/bridge/abstract_base.h
new file mode 100644
index 0000000000000000000000000000000000000000..48badc3d7be346058b75b04bdd76cbfe20832f03
--- /dev/null
+++ b/include/bridge/abstract_base.h
@@ -0,0 +1,141 @@
+#ifndef ABSTRACT_BASE_
+#define ABSTRACT_BASE_
+
+#include "ros/ros.h"
+#include <xmlrpcpp/XmlRpc.h>
+#include <tf2/LinearMath/Transform.h>
+
+#include "octomap/octomap.h"
+#include <pcl/point_cloud.h>
+#include <pcl/octree/octree.h>
+
+
+#include <ros/package.h>
+#include <yaml-cpp/yaml.h>
+#include <fstream>
+#include "reader/abstract_param_reader.h"
+
+#include "robot/abstract_robot.h"
+#include "bridge/abstract_base_implementation.h"
+
+class Abstract_base_implementation;
+class Abstract_robot;
+
+
+//!  Abstract base class
+/*!
+Class which represents the template class abstraction, which calls methodes from an abstract implementation
+*/
+class Abstract_base{
+    protected:
+    std::shared_ptr<ros::NodeHandle> nh_; //!< Ros nodehandle object
+
+    std::vector<tf2::Transform> map_; //!< Reachability map structure of a robot
+    std::vector<tf2::Transform> inv_map_; //!< Inversion of reachability map structure
+    std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>> task_space_; //!< Drop-off locations with their grasp orientations, mapped to a robot
+    std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>> target_cloud_; //!< Pointcloud structure, mapped to robot
+    std::map<const std::string, std::vector<pcl::PointXYZ>> result_; //!< Result basepositions per robot
+
+
+    std::shared_ptr<Abstract_base_implementation> implementation_; //!< refined implementation 
+
+    public:
+    //! constructor.
+    /*!
+      \param nh ros::NodeHandle to interact with paramserver
+    */
+    Abstract_base(std::shared_ptr<ros::NodeHandle> const& nh) : nh_(nh){};
+
+    //! Get used implementation
+    /*!
+      \return pointer to implementation
+    */
+    inline Abstract_base_implementation* implementation() {return implementation_.get();}
+
+    //! Set used implementation
+    /*!
+      \param implementation specific implementation derived from Abstract_base_implementation
+    */
+    inline void set_implementation(std::shared_ptr<Abstract_base_implementation> implementation) {implementation_ = implementation;}
+
+    //! Get result map
+    /*!
+      \return baseposition vector per robot
+    */
+    inline std::map<const std::string, std::vector<pcl::PointXYZ>>& result() { return result_;}
+
+    //! Set result map
+    /*!
+      \param result baseposition vector per robot
+    */
+    inline void result(std::map<const std::string, std::vector<pcl::PointXYZ>>& result) { result_ = result;}
+
+    //! Get inverse map 
+    /*!
+      \return inverse map structure 
+    */
+    inline std::vector<tf2::Transform>& inv_map() {return inv_map_;}
+
+    //! Set inverse map structure
+    /*!
+      \param inv_map inverse map structure
+    */
+    inline void set_inv_map(std::vector<tf2::Transform>& inv_map) {inv_map_ = inv_map;}
+
+    //! Get map structure
+    /*!
+      \return map structure 
+    */
+    inline std::vector<tf2::Transform>& map() {return map_;}
+
+    //! Set map structure
+    /*!
+      \param map map structure
+    */
+    inline void set_map(std::vector<tf2::Transform>& map) {map_ = map;}
+
+    //! Get task space
+    /*!
+      \return task space
+    */
+    inline std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space() {return task_space_;}
+
+    //! Set task space
+    /*!
+      \param s_trans task space
+    */
+    inline void set_task_space(std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& s_trans) {task_space_ = s_trans;}
+
+
+    //! Get task cloud
+    /*!
+      \return task cloud map
+    */
+    inline std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>& target_cloud () { return target_cloud_;}
+
+    //! Set task cloud
+    /*!
+      \param cloud cloud map 
+    */
+    inline void set_target_cloud(std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>& cloud) {target_cloud_ = cloud;}
+
+    //! box discretization
+    /*!
+      box shaped representation of space, centered at origin (0,0,0)
+      \return vector of pcl::PointXYZ data
+    */
+    static std::vector<pcl::PointXYZ> create_pcl_box();
+
+    //! write trask
+    /*!
+      \param robot 
+    */
+    virtual void write_task(Abstract_robot* robot)=0;
+
+    //! pure virtual template methode 
+    /*! 
+      bridge template methode, in which implementation is called to calculate base positions
+    */
+    virtual void base_calculation()=0;
+};
+#endif
diff --git a/include/bridge/abstract_base_implementation.h b/include/bridge/abstract_base_implementation.h
new file mode 100644
index 0000000000000000000000000000000000000000..d062b54eaf8b903bcd0bd62e4fac52bc57e29c2e
--- /dev/null
+++ b/include/bridge/abstract_base_implementation.h
@@ -0,0 +1,44 @@
+#ifndef ABSTRACT_BASE_IMPLEMENTATION_
+#define ABSTRACT_BASE_IMPLEMENTATION_
+
+#include <ros/ros.h>
+#include "bridge/abstract_base.h"
+
+//!  abstract base implementation
+/*!
+abstract implementation for base calculation, including all necessary hook methods that can be called from a template method
+*/
+class Abstract_base_implementation {
+    public:
+    //! Abstract base implementation default constructor
+    Abstract_base_implementation()= default;
+
+    //! Abstract base implementation default destructor
+    ~Abstract_base_implementation()= default;
+
+    //!  pure virtual methode to set grasp orientations
+    /*!
+    Manipulates the map of grasp orientations of a graspable object, mapped to a robot
+    \param var caller reference to manipulate member
+    */
+    virtual void set_grasp_orientations(std::map<const std::string, std::vector<std::pair<object_data, std::vector<tf2::Quaternion>>>>& var)=0;
+
+    //!  pure virtual methode to create inverse map
+    /*!
+    Manipulates the inv_map vector
+    \param map reference to manipulate member
+    \param inv_map reference to manipulate member
+    \param task_space reference to manipulate member
+    */
+    virtual void inv_map_creation(std::vector<tf2::Transform>& map, std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space)=0;
+
+    //  pure virtual methode to calculate pcl clouds
+    //
+    // Manipulates the vector of pcl::cloud of a graspable object
+    // param var caller reference to manipulate member
+    virtual void cloud_calculation(std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space, std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>& target_cloud)=0;
+
+
+};
+
+#endif
\ No newline at end of file
diff --git a/include/bridge/simple_base.h b/include/bridge/simple_base.h
new file mode 100644
index 0000000000000000000000000000000000000000..2c1be3fad6df4b08a6d610dfd04836cd26914c92
--- /dev/null
+++ b/include/bridge/simple_base.h
@@ -0,0 +1,49 @@
+#ifndef SIMPLE_BASE_
+#define SIMPLE_BASE_
+
+#include "ros/ros.h"
+#include <xmlrpcpp/XmlRpc.h>
+#include <tf2/LinearMath/Transform.h>
+
+#include "octomap/octomap.h"
+#include <pcl/point_cloud.h>
+#include <pcl/octree/octree.h>
+
+
+#include <ros/package.h>
+#include <yaml-cpp/yaml.h>
+#include <fstream>
+
+#include "bridge/abstract_base.h"
+#include "reader/map_reader.h"
+#include "reader/ts_reader.h"
+
+
+//!  refiend base abstraction
+/*!
+  A simple refined abstraction, which utilizes raeder objects to set upper member vaiables.
+*/
+class Simple_base : public Abstract_base {
+    protected:
+    std::unique_ptr<Ts_reader> task_space_reader_;  /*!<  Task space reader object */
+    std::unique_ptr<Map_reader> map_reader_; /*!<  Reachability map reader object */
+
+    public:
+    //! Simple base constructor 
+    /*!
+        \param d Ros nodehandle to interact with ros
+    */
+    Simple_base(std::shared_ptr<ros::NodeHandle> const& d);
+
+    //! refined Template methode
+    /*!
+      Overriden methide which calls necessary functions from implementation
+      \param var store inversed reachability map data
+      \return map of base positions linked to robots
+    */
+    void base_calculation() override;
+    std::vector<pcl::PointXYZ> create_pcl_box();
+    void write_task(Abstract_robot* robot) override;
+
+};
+#endif
\ No newline at end of file
diff --git a/include/bridge/simple_base_implementation.h b/include/bridge/simple_base_implementation.h
new file mode 100644
index 0000000000000000000000000000000000000000..ee16766055edf880a90761637de084c8d1dd4860
--- /dev/null
+++ b/include/bridge/simple_base_implementation.h
@@ -0,0 +1,46 @@
+#ifndef SIMPLE_BASE_IMPLEMENTATION_
+#define SIMPLE_BASE_IMPLEMENTATION_
+
+#include <ros/ros.h>
+#include "bridge/abstract_base_implementation.h"
+#include "bridge/abstract_base.h"
+
+//!  refined base implementation
+/*!
+generel base calculation approach
+*/
+class Simple_base_implementation : public Abstract_base_implementation {
+    public:
+
+    //! Default simple base implementation constructor
+    Simple_base_implementation()= default;
+
+    //! Default simple base implementation destructor
+    ~Simple_base_implementation()= default;
+
+    //! Store grasp orientations as endeffector transforms
+    /*!
+    The 5 most basic Orientatations (x, -x, y, -y, z) for all graspable objects
+        \param var manipulate grasp orienattions mapped to object and robot
+    */
+    void set_grasp_orientations(std::map<const std::string, std::vector<std::pair<object_data, std::vector<tf2::Quaternion>>>>& var) override;
+
+    //! Create inversed reachability map
+    /*!
+    Creating inversed reachability map by inverting reachability map if grasp orientations match reachability map entries
+        \param map store inversed reachability map data
+        \param inv_map store inversed reachability map data
+        \param task_space store inversed reachability map data
+    */
+    void inv_map_creation(std::vector<tf2::Transform>& map, std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space) override;
+
+    //! PCL Cloud calculation for any Object
+    /*!
+        \param var store cload data in proper map
+    */
+    void cloud_calculation(std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space, std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>& target_cloud) override;
+
+    
+};
+
+#endif
\ No newline at end of file
diff --git a/include/bt/execution.h b/include/bt/execution.h
deleted file mode 100644
index e46654f2ed6bd1b4a8eb53475adfb3f0543ab716..0000000000000000000000000000000000000000
--- a/include/bt/execution.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef EXECUTION_
-#define EXECUTION_
-
-#include "ros/ros.h"
-#include "behaviortree_cpp_v3/behavior_tree.h"
-#include "behaviortree_cpp_v3/tree_node.h"
-#include "behaviortree_cpp_v3/basic_types.h"
-#include "behaviortree_cpp_v3/leaf_node.h"
-#include "impl/abstract_mediator.h"
-#include "impl/moveit_mediator.h"
-
-#include <moveit_task_constructor_msgs/ExecuteTaskSolutionAction.h>
-
-
-#include <moveit/move_group_interface/move_group_interface.h>
-#include <moveit_msgs/ApplyPlanningScene.h>
-#include <moveit/robot_model_loader/robot_model_loader.h>
-#include <moveit/planning_scene/planning_scene.h>
-#include <moveit/kinematic_constraints/utils.h>
-
-class Execution : public BT::StatefulActionNode{
-    private:
-    moveit_task_constructor_msgs::ExecuteTaskSolutionGoal ets_;
-    Moveit_robot* mr_reference_;
-    ros::Publisher* publisher_reference_;
-    std::map<std::string, std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene>>* executions_;
-    std::vector<moveit_task_constructor_msgs::SubTrajectory>::iterator it_;
-
-
-    public:
-    Execution(const std::string& name, const BT::NodeConfiguration& config);
-    void init(std::map<std::string, std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene>>* executions_, ros::Publisher* publisher_reference, Moveit_robot* mr_reference_, moveit_task_constructor_msgs::ExecuteTaskSolutionGoal& ets);
-
-    inline static BT::PortsList providedPorts() { return {}; }
-
-    BT::NodeStatus onStart() override;
-    BT::NodeStatus onRunning() override;
-    void onHalted() override;
-};
-#endif
-
-
-
diff --git a/include/bt/parallel_robot.h b/include/bt/parallel_robot.h
deleted file mode 100644
index 21a51bfab17f73a141495be65d6e333a1d0b6f3d..0000000000000000000000000000000000000000
--- a/include/bt/parallel_robot.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#ifndef PARALLEL_ROBOT_
-#define PARALLEL_ROBOT_
-
-#pragma once
-
-#include <set>
-#include "behaviortree_cpp_v3/control_node.h"
-
-class Parallel_robot : public BT::ControlNode{
-public:
-  Parallel_robot(const std::string& name, int success_threshold, int failure_threshold = 1);
-  Parallel_robot(const std::string& name, const BT::NodeConfiguration& config);
-
-  static BT::PortsList providedPorts(){
-    return {BT::InputPort<int>(THRESHOLD_SUCCESS, "number of childen which need to succeed "
-                                              "to "
-                                              "trigger a SUCCESS"),
-            BT::InputPort<int>(THRESHOLD_FAILURE, 1,
-                           "number of childen which need to fail to trigger a FAILURE")};
-  }
-
-  ~Parallel_robot() override = default;
-
-  virtual void halt() override;
-
-  size_t successThreshold() const;
-  size_t failureThreshold() const;
-  void setSuccessThreshold(int threshold_M);
-  void setFailureThreshold(int threshold_M);
-
-private:
-  int success_threshold_;
-  int failure_threshold_;
-
-  std::set<int> skip_list_;
-
-  bool read_parameter_from_ports_;
-  static constexpr const char* THRESHOLD_SUCCESS = "success_threshold";
-  static constexpr const char* THRESHOLD_FAILURE = "failure_threshold";
-
-  virtual BT::NodeStatus tick() override;
-};
-
-#endif
-
-
diff --git a/include/bt/planning_scene.h b/include/bt/planning_scene.h
deleted file mode 100644
index 25cf44d7f1bdb7132733f6a25dbc76ba4514eacb..0000000000000000000000000000000000000000
--- a/include/bt/planning_scene.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef PLANNING_SCENE_
-#define PLANNING_SCENE_
-
-#include "ros/ros.h"
-#include "behaviortree_cpp_v3/behavior_tree.h"
-#include "behaviortree_cpp_v3/tree_node.h"
-#include "behaviortree_cpp_v3/basic_types.h"
-
-#include <moveit/move_group_interface/move_group_interface.h>
-#include <moveit_msgs/ApplyPlanningScene.h>
-#include <moveit/robot_model_loader/robot_model_loader.h>
-#include <moveit/planning_scene/planning_scene.h>
-#include <moveit/kinematic_constraints/utils.h>
-
-class Planning_scene : public BT::AsyncActionNode{
-    private:
-    ros::Publisher* publisher_reference_;
-    moveit_msgs::PlanningScene planning_scene_;
-
-    public:
-    Planning_scene(const std::string& name, const BT::NodeConfiguration& config);
-    void init(ros::Publisher* publisher_reference, moveit_msgs::PlanningScene& planning_scene);
-
-
-    // You must override the virtual function tick()
-    // this example doesn't require any port
-    inline static BT::PortsList providedPorts() { return {}; }
-    BT::NodeStatus tick() override;
-};
-#endif
\ No newline at end of file
diff --git a/include/bt/position_condition.h b/include/bt/position_condition.h
deleted file mode 100644
index ef66a618b399d2412415a12a7866d51ccf325f59..0000000000000000000000000000000000000000
--- a/include/bt/position_condition.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef POSITION_CONDITION_
-#define POSITION_CONDITION_
-
-#include "ros/ros.h"
-#include "behaviortree_cpp_v3/behavior_tree.h"
-#include "behaviortree_cpp_v3/tree_node.h"
-#include "behaviortree_cpp_v3/basic_types.h"
-#include "behaviortree_cpp_v3/leaf_node.h"
-
-#include <moveit_task_constructor_msgs/ExecuteTaskSolutionAction.h>
-
-#include <moveit/planning_scene_interface/planning_scene_interface.h>
-#include <moveit/move_group_interface/move_group_interface.h>
-#include <moveit_msgs/ApplyPlanningScene.h>
-#include <moveit/robot_model_loader/robot_model_loader.h>
-#include <moveit/planning_scene/planning_scene.h>
-#include <moveit/kinematic_constraints/utils.h>
-
-
-class Position_condition : public BT::ConditionNode {
-public:
-Position_condition(const std::string& name, const BT::NodeConfiguration& config);
-
-void init(const std::string& obj_name,tf2::Vector3& start_pos, moveit::planning_interface::PlanningSceneInterface* psi);
-
-inline static BT::PortsList providedPorts() { return {}; }
-
-protected:
-
-virtual BT::NodeStatus tick() override;
-std::string obj_name_;
-moveit::planning_interface::PlanningSceneInterface* psi_;
-tf2::Vector3 start_pos_;
-};
-
-#endif
\ No newline at end of file
diff --git a/include/bt/trajetory.h b/include/bt/trajetory.h
deleted file mode 100644
index 54d4f99229aaf0b61f0d8eb9dd8bc594c02a2951..0000000000000000000000000000000000000000
--- a/include/bt/trajetory.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#ifndef TRAJETORY_
-#define TRAJETORY_
-
-#include "ros/ros.h"
-#include "behaviortree_cpp_v3/behavior_tree.h"
-#include "behaviortree_cpp_v3/tree_node.h"
-#include "behaviortree_cpp_v3/basic_types.h"
-
-
-
-#include <moveit/move_group_interface/move_group_interface.h>
-#include <moveit_msgs/ApplyPlanningScene.h>
-#include <moveit/robot_model_loader/robot_model_loader.h>
-#include <moveit/planning_scene/planning_scene.h>
-#include <moveit/kinematic_constraints/utils.h>
-
-class Trajetory : public BT::AsyncActionNode{
-    private:
-    moveit::planning_interface::MoveGroupInterface* mgi_reference_;
-    moveit_msgs::RobotTrajectory trajetory_;
-
-    public:
-    Trajetory(const std::string& name, const BT::NodeConfiguration& config);
-    void init (moveit::planning_interface::MoveGroupInterface* mgi_reference, moveit_msgs::RobotTrajectory& trajetory);
-
-
-
-    // You must override the virtual function tick()
-    inline static BT::PortsList providedPorts() { return {}; }
-    BT::NodeStatus tick() override;
-};
-#endif
\ No newline at end of file
diff --git a/include/impl/moveit_mediator.h b/include/impl/moveit_mediator.h
index 680e700764a1c77ae69dbf8be2b440eb545a395c..d9866f62d8e50a6e97e044a9076767e873c782a6 100644
--- a/include/impl/moveit_mediator.h
+++ b/include/impl/moveit_mediator.h
@@ -47,8 +47,6 @@
 #include <moveit/moveit_cpp/moveit_cpp.h>
 #include "reader/job_reader.h"
 #include "reader/cuboid_reader.h"
-#include <thread>
-
 
 #include <stdint.h>
 
@@ -77,7 +75,8 @@ class Moveit_mediator : public Abstract_mediator{
 
     std::map<std::string, std::vector<uint8_t>> acm_;
     std::multimap<std::string, std::pair<tf2::Vector3, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>> tasks_;
-    std::map<std::string, std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene>> executions_;
+
+
 
 
 
@@ -87,29 +86,23 @@ class Moveit_mediator : public Abstract_mediator{
     void setup_task();
     inline std::shared_ptr<moveit::planning_interface::MoveGroupInterface> mgi() {return mgi_;};
 
+
     bool check_collision(const int& robot) override;
     void mediate() override;
     void build_wings(std::bitset<3>& wing,int& robot) override;
     void set_wings(std::vector<std::pair<std::vector<object_data>, int>>& wbp) override;
     void connect_robots(Abstract_robot* robot) override;
-    void status_callback(const actionlib_msgs::GoalStatusArray::ConstPtr& status);
 
 
-    void merge_ps(moveit_msgs::PlanningScene& out, moveit_msgs::PlanningScene in, Moveit_robot* mr);
+    void merge_ps(moveit_msgs::PlanningScene& out, moveit_msgs::PlanningScene* in, Moveit_robot* mr);
     void merge_acm(moveit_msgs::PlanningScene& in);
 
     void task_planner();
     void publish_tables();
-
-    void parallel_exec(Moveit_robot& r, moveit_msgs::RobotTrajectory rt);
-    void manipulate_acm(Moveit_robot* mr, moveit_msgs::PlanningScene& ps);
-
-    //void parallel_exec();
-
+    void rewrite_task_template(Abstract_robot* r, moveit_msgs::CollisionObject& source, tf2::Transform& target);
+    void parallel_exec(Moveit_robot& r, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps);
     moveit::task_constructor::Task create_Task(Moveit_robot* r, moveit_msgs::CollisionObject& source, tf2::Transform& target);
-    inline std::map<std::string, std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene>>& executions(){return executions_;};
     inline std::map<std::string, std::vector<moveit::task_constructor::Task>>& task_map(){return task_map_;};
-
     inline void set_tasks(std::multimap<std::string, std::pair<tf2::Vector3, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>>& tasks) {tasks_ = tasks;};
 
 
diff --git a/include/mediator/abstract_mediator.h b/include/mediator/abstract_mediator.h
new file mode 100644
index 0000000000000000000000000000000000000000..d2ac279771928e896a9e0ed80054cb14b32f6612
--- /dev/null
+++ b/include/mediator/abstract_mediator.h
@@ -0,0 +1,118 @@
+#ifndef ABSTRACT_MEDIATOR_
+#define ABSTRACT_MEDIATOR_
+
+#include <ros/ros.h>
+#include "robot/decorators/abstract_robot_decorator.h"
+#include "robot/abstract_robot.h"
+#include "robot/ceti_robot.h"
+
+
+#include "robot_element/abstract_robot_element.h"
+
+#include "reader/wing_reader.h"
+#include "reader/ts_reader.h"
+
+#include <ros/package.h>
+#include <yaml-cpp/yaml.h>
+#include <fstream>
+
+#include <octomap/octomap.h>
+#include <pcl/point_cloud.h>
+#include <pcl/octree/octree.h>
+
+struct wing_BP {
+    std::string name_;
+    tf2::Transform pos_;
+    tf2::Vector3 size_;
+};
+
+//!  Abstract mediator
+/*!
+  Mediator abstraction which takes care of robot abstractions
+*/
+class Abstract_mediator {
+    protected:
+    std::shared_ptr<ros::NodeHandle> nh_; //!< Ros nodehandle object
+    std::unique_ptr<Ts_reader> task_space_reader_; //!< Task_space reader which provides drop off positions
+    std::vector<std::unique_ptr<Abstract_robot_decorator>> robots_; //!< Robots agents
+    std::vector<std::vector<std::vector<tf2::Transform>>> relative_bounds_; //!< total bound a  workspace
+
+    std::map<const std::string, std::vector<pcl::PointXYZ>> result_vector_; //!< Result_vector of base positions linked to robot
+    std::map<const std::string, std::vector<std::unique_ptr<Abstract_robot_element>>> wings_;
+    std::string dirname_; //!< Dirname of the reference protobuff
+
+    public:
+    //! Abstract mediator constructor
+    /*!
+        initializes task_space reader
+        \param d Ros nodehandle
+    */
+    Abstract_mediator(std::shared_ptr<ros::NodeHandle> const& d);
+
+    //! Set result vector
+    /*!
+        \param res result vector
+    */
+    inline void set_result_vector(std::map<const std::string, std::vector<pcl::PointXYZ>>& res) {result_vector_ = res;}
+
+    //! Get wings
+    /*!
+        \return map of panals linked to their robots
+    */
+    inline std::map<const std::string, std::vector<std::unique_ptr<Abstract_robot_element>>>& wings() {return wings_;}
+
+    //! Get result_vector
+    /*!
+        \return result_vector
+    */
+    inline std::map<const std::string, std::vector<pcl::PointXYZ>>& result_vector() {return result_vector_;}
+
+    //! Get robots
+    /*!
+        \return robots as decorators
+    */
+    inline std::vector<std::unique_ptr<Abstract_robot_decorator>>& robots(){return robots_;}
+
+    //! Set dirname
+    /*!
+        \param dirn new dirname 
+    */
+    inline void set_dirname(std::string& dirn) {dirname_ = dirn;}
+
+    //! Get dirname
+    /*!
+        \return dirname
+    */
+    inline std::string& dirname() {return dirname_;}
+
+
+    //! Cloud converter
+    /*!
+        Converts vector of pcl::PointXYZ to a pcl::Pointcloud
+        \param vector Vector of XYZPoints
+        \return Pointcloud
+    */
+    pcl::PointCloud< pcl::PointXYZ >::Ptr vector_to_cloud(std::vector<pcl::PointXYZ>& vector);
+    
+    //! pure virtual robot connecting methode
+    /*!
+        \param robot robot decorator
+    */
+    virtual void connect_robots(std::unique_ptr<Abstract_robot_decorator> robot)=0; 
+
+    //! pure virtual mediate methode
+    virtual void mediate()=0;
+
+    //! pure virtual methode to build specific wings
+    /*!
+        \param wing bitmap showing which wing should be build
+        \param robot Robot index
+
+    */
+    virtual void build_wings(std::bitset<3>& wing, int& robot)=0;
+
+
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/mediator/base_calculation_mediator.h b/include/mediator/base_calculation_mediator.h
new file mode 100644
index 0000000000000000000000000000000000000000..f5611f0b46f7398bc47cd0138b3cd1937d1886b0
--- /dev/null
+++ b/include/mediator/base_calculation_mediator.h
@@ -0,0 +1,132 @@
+#ifndef BASE_CALCULATION_MEDIATOR_
+#define BASE_CALCULATION_MEDIATOR_
+
+#include <ros/ros.h>
+#include <ros/package.h>
+#include <yaml-cpp/yaml.h>
+#include <fstream>
+
+#include "mediator/abstract_mediator.h"
+#include "robot/abstract_robot.h"
+#include "robot/ceti_robot.h"
+#include "robot_element/observers/rviz_panel.h"
+#include "robot_element/decorators/log_decorator.h"
+
+#include "reader/wing_reader.h"
+#include "reader/robot_reader.h"
+
+//!  Concrete Mediator
+/*!
+    Base calculation mediator, which mediates agents to form a multi-cell by placing/rotating and perform collision checks
+*/
+class Base_calculation_mediator : public Abstract_mediator{
+    protected:
+    std::unique_ptr<ros::Publisher> pub_; //!< Publisher sharing visualization messages of the scene
+    std::unique_ptr<Wing_reader> wing_reader_; //!< Wing_reader which collects panel information of robots
+    std::unique_ptr<Robot_reader> robot_reader_; //!< Robot_reader which collects robot poses 
+
+
+    std::map<const std::string, std::vector<pcl::PointXYZ>> grounds_; //!< Possible ground positions per robots
+    std::vector<std::vector<std::unique_ptr<Abstract_robot_element>>> wings_; //!< Possible panels per robot
+
+    public:
+    //!  Base_calculation_mediator constructor
+    /*!
+        initializes readers und publisher
+            \param d Ros nodehandle
+    */
+    Base_calculation_mediator(std::shared_ptr<ros::NodeHandle> const& d);
+
+    //!  Ground generator
+    /*!
+        initialize descrete ground 
+            \param origin Ros nodehandle
+            \param diameter Ros nodehandle
+            \param resolution Ros nodehandle
+
+    */
+    void generate_grounds(const tf2::Vector3 origin, const float diameter, float resolution);
+
+    //!  Get Wing_reader
+    /*!
+            \return wing reader
+    */
+    inline Wing_reader* wing_reader() {return wing_reader_.get();}
+
+    //!  Get Robot_reader
+    /*!
+            \return robot reader
+    */
+    inline Robot_reader* robot_reader() {return robot_reader_.get();}
+
+    //!  Approximates other robots to fit in the workspace
+    /*!
+        Places and rotates robot to fit in a previous robots surrounding
+            \param robot next robot to fit in
+    */
+    void approximation(Ceti_robot* robot);
+
+    //!  Writes result file
+    /*!
+        Writes Protobuff file containing all robots, panels, Drop off locations and actual box positions
+            \param A Robots
+            \param B Robots
+
+    */
+    void write_file(Ceti_robot* A, Ceti_robot* B);
+
+    //!  Marker publishing methode
+    /*!
+        Publishes all markers of an robot
+            \param r Robot
+    */
+    void publish(Ceti_robot* r);
+
+    //!  Rviz setup methode
+    void setup_rviz();
+
+    //!  Workspace calculator
+    /*!
+        calculates for given robots and corresponding base position, all possible combinations.
+            \param workcell map of robots with corresponding base position
+    */
+    void calculate(std::map<const std::string, std::vector<tf2::Transform>>& workcell);
+    
+    //!  Sets panels for robots
+    void set_panel();
+
+    //!  check_collision
+    /*!
+        Checks task_space of robot for collision. Also provides information about workload.
+            \param robot[IN] std::string providing robot name       
+            \param panel_mask[IN] bitmap providing which robot_elements to check 
+            \param[OUT] workload desribing if robot/all robots_elements were used 
+            \return true if task_space collides with robot/robot_elements
+
+    */
+    bool check_collision(const std::string& robot, std::bitset<3>& panel_mask, bool& workload);
+
+    //!  Mediator implementation
+    /*!
+        Places and rotates robots till no collisions exists, all objects are somewhere on the tables
+    */
+    void mediate() override;
+
+    //!  Resets wings of a robot
+    /*!
+        Rebuild robot wings by comparing robot observer mask and requested configuration
+            \param wings requested wings
+            \param robot robot index
+    */
+    void build_wings(std::bitset<3>& wings, int& robot) override;
+
+    //!  Robot Connector implementation 
+    /*!
+        registers robot
+            \param robot 
+    */
+    void connect_robots(std::unique_ptr<Abstract_robot_decorator> robot) override;
+
+};
+
+#endif
\ No newline at end of file
diff --git a/include/reader/abstract_param_reader.h b/include/reader/abstract_param_reader.h
index 1191a7a29eaeaa5bb1e06a640fbc98282953859a..535ec4fce0a534f77b8d559b9f2b49ae6bf7db75 100644
--- a/include/reader/abstract_param_reader.h
+++ b/include/reader/abstract_param_reader.h
@@ -20,14 +20,29 @@ struct job_data {
     std::vector<tf2::Transform> jobs_;
 };
 
+//!  Abstract ROS-Param reader class
+/*!
+    Class concerned with reading information from ROS-Param server.
+*/
 class Abstract_param_reader{
     protected:
-    std::shared_ptr<ros::NodeHandle> nh_;
+    std::shared_ptr<ros::NodeHandle> nh_; //!< ROS Nodehandle
 
     public:
+    //!  Abstract param reader constructor
+    /*!
+            \param d ROS Nodehandle
+    */
     Abstract_param_reader(std::shared_ptr<ros::NodeHandle> const& d) : nh_(d){}
 
+    //!  Xmlrpc parser 
+    /*!
+        converts param to float value
+            \param val XmlRPCValue reference from Nodehandle
+    */
     float float_of(XmlRpc::XmlRpcValue& val);
+
+    //!  pure virtual read methode 
     virtual void read()=0;
 };
 #endif
diff --git a/include/reader/cuboid_reader.h b/include/reader/cuboid_reader.h
index 7959ddbb543e04ee1534fb8082bda5353418e111..06463d73dbc2e3d99c1d22ac3293d58f6c51565c 100644
--- a/include/reader/cuboid_reader.h
+++ b/include/reader/cuboid_reader.h
@@ -10,20 +10,48 @@
 #include "reader/abstract_param_reader.h"
 
 
+//!  Cuboid reader
+/*!
+    Reader which returns cuboid objects as defined in gb_grasp
+*/
 class Cuboid_reader : public Abstract_param_reader{
     protected:
-    std::vector<Cuboid> cuboid_box_;
-    std::vector<Cuboid> cuboid_obstacle_;
+    std::vector<Cuboid> cuboid_box_; //!< As box defined object
+    std::vector<Cuboid> cuboid_obstacle_; //!< As obstacle defined objects
 
     public:
+    //!  Cuboid reader constructor
+    /*!
+        Calls pure virtual read() methode
+            \param d ROS nodehandle 
+    */
     Cuboid_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
     
+    //!  Set Cuboid box
+    /*!
+            \param cuboid_data 
+    */
     inline void set_cuboid_bin_data(std::vector<Cuboid>& cuboid_data) {cuboid_box_ = cuboid_data;}
+
+    //!  Set Cuboid obstacle
+    /*!
+            \param cuboid_data
+    */
     inline void set_cuboid_obstacle_data(std::vector<Cuboid>& cuboid_data) {cuboid_obstacle_ = cuboid_data;}
 
+    //!  Get Cuboid box
+    /*!
+            \return  Cuboid box vector
+    */
     inline std::vector<Cuboid> cuboid_bin() {return cuboid_box_;}
+
+    //!  Get Cuboid obstacle
+    /*!
+            \return  Cuboid obstacle vector
+    */
     inline std::vector<Cuboid> cuboid_obstacle() {return cuboid_obstacle_;}
 
+    //!  read implementatin
     void read() override;
 };
 #endif
diff --git a/include/reader/job_reader.h b/include/reader/job_reader.h
index f02530bd8b4c22923f16eb28f1cbc48c538900a8..76711049f1b5db1aeb23d9587e639ef89aa98f00 100644
--- a/include/reader/job_reader.h
+++ b/include/reader/job_reader.h
@@ -9,19 +9,38 @@
 
 #include "reader/abstract_param_reader.h"
 
-
+//!  Job reader
+/*!
+    Reader which returns job data liked to robot
+*/
 class Job_reader : public Abstract_param_reader{
     protected:
-    boost::circular_buffer<std::pair<std::string, job_data>> job_data_;
+    boost::circular_buffer<std::pair<std::string, job_data>> job_data_; //!< FIFO job information 
 
     public:
+    //!  Job reader constructor
+    /*!
+        Calls read() implementation
+            \param d ROS Nodehandle         
+    */
     Job_reader(std::shared_ptr<ros::NodeHandle> const& d) 
     : Abstract_param_reader(d)
     {read();}
     
+    //!  Set Job_data
+    /*!
+        Calls pure virtual read() methode
+            \param robot_data FIFO job information      
+    */
     inline void set_job_data(boost::circular_buffer<std::pair<std::string, job_data>>& robot_data) {job_data_ = robot_data;}
+
+    //!  Get Job_data
+    /*!
+            \return FIFO job information      
+    */
     inline boost::circular_buffer<std::pair<std::string, job_data>>& robot_data() {return job_data_;}
 
+    //!  read implementation
     void read() override;
 };
 #endif
diff --git a/include/reader/map_reader.h b/include/reader/map_reader.h
new file mode 100644
index 0000000000000000000000000000000000000000..5f0faa10523386f914d96149aad72e6dc31e047c
--- /dev/null
+++ b/include/reader/map_reader.h
@@ -0,0 +1,42 @@
+#ifndef MAP_READER_
+#define MAP_READER_
+
+#include "ros/ros.h"
+#include <ros/package.h>
+#include <xmlrpcpp/XmlRpc.h>
+
+#include "reader/abstract_param_reader.h"
+
+
+//!  Map reader
+/*!
+    Reads Reachabilty Map vector
+*/
+class Map_reader : public Abstract_param_reader{
+    protected:
+    std::vector<tf2::Transform> map_data_; //!< Map transforms
+
+    public:
+    //!  Map reader
+    /*!
+        Calls pure virtual read() methode
+            \param d Ros Nodehandle
+    */
+    Map_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
+    
+    //!  Set map_data
+    /*!
+            \param robot_data vector of transforms
+    */
+    inline void set_map_data(std::vector<tf2::Transform>& robot_data) {map_data_ = robot_data;}
+
+    //!  Get map_data
+    /*!
+            \return vector of transforms
+    */
+    inline std::vector<tf2::Transform>& map_data() {return map_data_;}
+
+    //!  read implementatin
+    void read() override;
+};
+#endif
diff --git a/include/reader/robot_reader.h b/include/reader/robot_reader.h
index 9008c30bb406f2e9b2e8da80a2e861281ecf6daa..e0c7eb12c43a2e737d826f67516a98e6bfd3af2c 100644
--- a/include/reader/robot_reader.h
+++ b/include/reader/robot_reader.h
@@ -8,16 +8,35 @@
 #include "reader/abstract_param_reader.h"
 
 
+//!  Robot reader
+/*!
+    Reads size and pose data for robot
+*/
 class Robot_reader : public Abstract_param_reader{
     protected:
-    std::vector<object_data> robot_data_;
+    std::vector<object_data> robot_data_; //!< Map of object_data to robot
 
     public:
+    //!  Robot reader constructor
+    /*!
+        Calls pure virtual read() methode
+            \param d ROS nodehandle 
+    */
     Robot_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
     
+    //!  Set robot data
+    /*!
+            \param robot_data Vector of object data
+    */
     inline void set_robot_data(std::vector<object_data>& robot_data) {robot_data_ = robot_data;}
+
+    //!  Get robot data
+    /*!
+            \return Vector of object data
+    */
     inline std::vector<object_data> robot_data() {return robot_data_;}
 
+    //!  read implementatin
     void read() override;
 };
 #endif
diff --git a/include/reader/task_space_reader.h b/include/reader/task_space_reader.h
index b3b7bdb46e32e5b684a5a8558076b26f5e91311e..f36ce61065b3e200017765c258697ab53a4da878 100644
--- a/include/reader/task_space_reader.h
+++ b/include/reader/task_space_reader.h
@@ -8,10 +8,20 @@
 #include "reader/abstract_param_reader.h"
 
 
+//!  Task space reader
+/*!
+    Reads task space information an writes them into file
+*/
 class Task_space_reader : public Abstract_param_reader{
     public:
+    //!  Task space reader constructor
+    /*!
+        Calls pure virtual read() methode
+            \param d ROS nodehandle 
+    */
     Task_space_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
     
+    //!  read implementatin
     void read() override;
 };
 #endif
diff --git a/include/reader/ts_reader.h b/include/reader/ts_reader.h
new file mode 100644
index 0000000000000000000000000000000000000000..1e300ca7af67c87779586930cffbc5ab17fdffb0
--- /dev/null
+++ b/include/reader/ts_reader.h
@@ -0,0 +1,42 @@
+#ifndef TS_READER_
+#define TS_READER_
+
+#include "ros/ros.h"
+#include <ros/package.h>
+#include <xmlrpcpp/XmlRpc.h>
+
+#include "reader/abstract_param_reader.h"
+
+
+//!  TS reader 
+/*!
+    Reads task space data
+*/
+class Ts_reader : public Abstract_param_reader{
+    protected:
+    std::map<const std::string, std::vector<object_data>> drop_off_data_;  //!< Map of drop off data to robot
+
+    public:
+    //!  TS reader constructor
+    /*!
+        Calls pure virtual read() methode
+            \param d ROS nodehandle 
+    */
+    Ts_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
+
+    //!  Get drop off data
+    /*!
+            \return Map of drop off data to robot
+    */
+    inline std::map< const std::string, std::vector<object_data>>& drop_off_data() {return drop_off_data_;}
+
+    //!  Set drop off data
+    /*!
+            \param dod of drop off data to robot
+    */
+    inline void set_drop_off_data(std::map< const std::string, std::vector<object_data>>& dod) {drop_off_data_= dod;}
+
+    //!  read implementatin
+    void read() override;
+};
+#endif
diff --git a/include/reader/wing_reader.h b/include/reader/wing_reader.h
index 0ae8c2204e5cecc1cad23dabfad4c32f7dd64d6f..9fe2c4f7b529d129dc9fae1f2c63814beb47ee8f 100644
--- a/include/reader/wing_reader.h
+++ b/include/reader/wing_reader.h
@@ -7,17 +7,35 @@
 
 #include "reader/abstract_param_reader.h"
 
-
+//!  Wing reader 
+/*!
+    Reads panel data 
+*/
 class Wing_reader : public Abstract_param_reader{
     protected:
-    std::vector<std::pair<std::vector<object_data>, int>> wing_data_;
+    std::map<const std::string, std::pair<std::vector<object_data>, int>> wing_data_;  //!< Mask and object data mapped to robot
 
     public:
+    //!  Wing reader constructor
+    /*!
+        Calls pure virtual read() methode
+            \param d ROS nodehandle 
+    */
     Wing_reader(std::shared_ptr<ros::NodeHandle> const& d) : Abstract_param_reader(d){read();}
     
-    inline void set_wing_data(std::vector<std::pair<std::vector<object_data>, int>>& wing_data) {wing_data_ = wing_data;}
-    inline std::vector<std::pair<std::vector<object_data>, int>> wing_data() {return wing_data_;}
+    //!  Set wing data
+    /*!
+            \param wing_data  Mask and object data mapped to robot
+    */
+    inline void set_wing_data(std::map<const std::string, std::pair<std::vector<object_data>, int>>& wing_data) {wing_data_ = wing_data;}
+
+    //!  Get wing data
+    /*!
+            \return wing_data  Mask and object data mapped to robot
+    */
+    inline std::map<const std::string, std::pair<std::vector<object_data>, int>>& wing_data() {return wing_data_;}
 
+    //!  read implementatin
     void read() override;
 };
-#endif
+#endif
\ No newline at end of file
diff --git a/include/robot/abstract_robot.h b/include/robot/abstract_robot.h
new file mode 100644
index 0000000000000000000000000000000000000000..868278c02e607c3119598a66eb4001922830bbc4
--- /dev/null
+++ b/include/robot/abstract_robot.h
@@ -0,0 +1,58 @@
+#ifndef ABSTRACT_ROBOT_
+#define ABSTRACT_ROBOT_
+
+#include "ros/ros.h"
+#include <tf2/LinearMath/Transform.h>
+
+#include "robot_element/abstract_robot_element.h"
+
+enum wing_config{
+    RML = 7,
+    RM_ = 6,
+    R_L = 5,
+    R__ = 4,
+    _ML = 3,
+    _M_ = 2,
+    __L = 1,
+    ___ = 0
+};
+
+class Abstract_robot {
+    protected:
+    std::string name_; //!< Name of robot
+    tf2::Vector3 size_; //!< Size of table 
+    tf2::Transform tf_; //!< Pose of table 
+    tf2::Transform root_tf_; //!< Robot root on table top
+    std::vector<tf2::Transform> bounds_; //!< Bounds of table top surface
+    std::vector<tf2::Transform> robot_root_bounds_; //!< Bounds of robot arm as sub-region of table top
+    
+    public:
+    Abstract_robot(std::string name, tf2::Transform tf, tf2::Vector3 size);
+
+    virtual std::string& name()=0; 
+    virtual tf2::Transform& tf()=0; 
+    virtual tf2::Vector3& size()=0; 
+    virtual tf2::Transform& root_tf()=0; 
+    virtual std::vector<tf2::Transform>& bounds()=0; 
+    virtual std::vector<tf2::Transform>& robot_root_bounds()=0; 
+
+    inline void size(tf2::Vector3& s) { size_ = s;}
+    inline void set_tf(tf2::Transform& t) { tf_ = t;}
+    inline void rotate(float deg) {tf2::Quaternion rot; rot.setRPY(0,0,deg); tf2::Transform t(rot, tf2::Vector3(0,0,0)); tf_= tf_* t;}
+    inline void translate(tf2::Vector3 t) {tf2::Transform tf(tf2::Quaternion(0,0,0,1), t); tf_*=tf;}
+    virtual void notify()= 0;
+    
+    //! Triangle area calculator
+    /*!
+        Calculates triangle with 3 vertices
+        \param A pose of triagnel vertice
+        \param B pose of triagnel vertice
+        \param C pose of triagnel vertice
+        \return float triangle area
+    */
+    float area_calculation(tf2::Transform& A, tf2::Transform& B, tf2::Transform& C);
+
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot/ceti_robot.h b/include/robot/ceti_robot.h
new file mode 100644
index 0000000000000000000000000000000000000000..f0d5d29346cbba35cab5a69da3d22e99a557d81c
--- /dev/null
+++ b/include/robot/ceti_robot.h
@@ -0,0 +1,131 @@
+#ifndef CETI_ROBOT_
+#define CETI_ROBOT_
+
+#include "ros/ros.h"
+#include "robot/abstract_robot.h"
+#include "robot_element/abstract_robot_element.h"
+#include "robot_element/decorators/abstract_robot_element_decorator.h"
+#include "robot_element/observers/panel.h"
+#include "robot_element/observers/field.h"
+
+#include <moveit/planning_scene_interface/planning_scene_interface.h>
+#include <moveit/move_group_interface/move_group_interface.h>
+#include <moveit_msgs/ApplyPlanningScene.h>
+#include <moveit/robot_model_loader/robot_model_loader.h>
+#include <moveit/planning_scene/planning_scene.h>
+#include <moveit/kinematic_constraints/utils.h>
+
+//! Concrete Ceti-Robot
+/*!
+Refers especially to Robot-Arms mounted on a table of variable size. 
+*/
+class Ceti_robot : public Abstract_robot{
+    protected:
+    std::vector<std::unique_ptr<Abstract_robot_element_decorator>> observers_;  //!< Wing shared pointers
+    std::vector<std::unique_ptr<Abstract_robot_element>> access_fields_;  //!< Serrounding Fields shared pointers
+    std::vector<std::shared_ptr<moveit_msgs::CollisionObject>> coll_markers_; //!< to be checked
+    std::bitset<3> observer_mask_;//!< Bitmap to set observers
+
+
+    public:
+    //! Ceti robot constructor
+    /*!
+    Initializes Ceti-Robot, calculates bounds out of arm and table size. 
+        \param name std::string as Robot name, following the Robotarm([0-9]+) pattern
+        \param tf Table center pose
+        \param size Table size
+    */
+    Ceti_robot(std::string& name, tf2::Transform tf, tf2::Vector3 size);
+
+
+
+    std::string& name() override {return name_;}
+    tf2::Transform& tf() override {return tf_;}
+    tf2::Vector3& size() override {return size_;}
+    tf2::Transform& root_tf() override {return root_tf_;}
+    std::vector<tf2::Transform>& bounds() override {return bounds_;}
+    std::vector<tf2::Transform>& robot_root_bounds() override {return robot_root_bounds_;}
+    
+    //! Set observers
+    /*!
+        \param observer vector
+    */
+    inline void set_observers(std::vector<std::unique_ptr<Abstract_robot_element_decorator>>& observer) { 
+        for (int i = 0; i < observer.size();i++){
+            observers_.push_back(std::move(observer[i]));
+        }
+    }
+
+
+    //! Get observers
+    /*!
+        \return observer vector
+    */
+    inline std::vector<std::unique_ptr<Abstract_robot_element_decorator>>& observers() { return observers_;}
+
+    //! Get access fields 
+    /*!
+        \return Access fields vector
+    */
+    inline std::vector<std::unique_ptr<Abstract_robot_element>>& access_fields() { return access_fields_;}
+
+    //! Adds marker to array
+    /*!
+        \param marker CollisionObject which will be add to marker vector
+    */
+    inline void add_coll_markers(std::shared_ptr<moveit_msgs::CollisionObject> marker) {coll_markers_.push_back(marker);}
+
+    //! Get collision markers
+    /*!
+        \return marker CollisionObject which will be add to marker vector
+    */
+    inline std::vector<std::shared_ptr<moveit_msgs::CollisionObject>> coll_markers(){ return coll_markers_;}
+
+    //! Register observers in vector
+    /*!
+        manipulates access fields and adds observer+
+        \param wd Wing observer 
+    */
+    void register_observers(std::unique_ptr<Abstract_robot_element> wd);
+
+    //! Resset all robot properties
+    void reset();
+    
+    //! Generate access fields as surrounding poses for possible robots
+    void generate_access_fields();
+
+    //! Collsion calculation
+    /*!
+        Iterates over Robot to calculate area und check collisions by other robot bounds
+        \param R Robot which bounds are to check for collisions
+        \return bool true if collision, false otherwise 
+    */
+    bool in_collision(Ceti_robot* R);
+
+    //! Collsion calculation for single objects 
+    /*!
+        Calculates collision between objects and robot_elemets, which are defined by the robot and its panels. Provides collision surface
+        \param[IN] obj pose to check
+        \param[IN] panel_mask discribing panels to check
+        \param[OUT] robot_element std::string describing the collision surface
+        \return true if collsision on robot or wings
+    */
+    bool check_single_object_collision(tf2::Transform& obj, std::string& robot_element, std::bitset<3>& panel_mask);
+
+    //! Observer pattern 
+    /*!
+        When changing pose, any observer calculates its new position in world frame
+    */
+    void notify() override;
+
+    inline std::bitset<3> observer_mask() {return observer_mask_;}
+    inline void set_observer_mask(int i) {observer_mask_ = std::bitset<3>(i);}
+
+
+
+};
+
+
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot/decorators/abstract_robot_decorator.h b/include/robot/decorators/abstract_robot_decorator.h
new file mode 100644
index 0000000000000000000000000000000000000000..4fa25269330ed6df75b6359eef578014128db82b
--- /dev/null
+++ b/include/robot/decorators/abstract_robot_decorator.h
@@ -0,0 +1,53 @@
+#ifndef ABSTRACT_ROBOT_DECORATOR_
+#define ABSTRACT_ROBOT_DECORATOR_
+
+#include "ros/ros.h"
+#include "robot/abstract_robot.h"
+
+#include <moveit/planning_pipeline/planning_pipeline.h>
+#include <moveit/planning_scene_interface/planning_scene_interface.h>
+#include <moveit/move_group_interface/move_group_interface.h>
+#include <moveit_msgs/ApplyPlanningScene.h>
+#include <moveit/robot_model_loader/robot_model_loader.h>
+#include <moveit/planning_scene/planning_scene.h>
+#include <moveit/kinematic_constraints/utils.h>
+
+
+#include <gb_grasp/MapGenerator.h>
+
+class Abstract_robot_decorator  : public Abstract_robot{
+    protected:
+    std::unique_ptr<Abstract_robot> next_;
+    std::shared_ptr<moveit::planning_interface::MoveGroupInterface> mgi_;
+    std::shared_ptr<moveit::planning_interface::MoveGroupInterface> mgi_hand_;
+
+    std::map<std::string, std::string>  map_; 
+    std::shared_ptr<MapGenerator> grasp_map_generator_;
+
+
+    public:
+    Abstract_robot_decorator(std::unique_ptr<Abstract_robot> next) 
+    : Abstract_robot("blanc", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0))
+    , mgi_(nullptr)
+    , mgi_hand_(nullptr)
+    , next_(std::move(next)){};
+
+    std::string& name() override { return next_->name();}
+    tf2::Transform& tf() override { return next_->tf();}
+    tf2::Vector3& size() override { return next_->size();}
+    tf2::Transform& root_tf() override { return next_->root_tf();}
+    std::vector<tf2::Transform>& bounds() override {return next_->bounds();}
+    std::vector<tf2::Transform>& robot_root_bounds() override { return next_->robot_root_bounds();}
+    void notify() override {next_->notify();}
+    
+    inline Abstract_robot* next(){return next_.get();}
+
+    virtual void spezifie_root_bounds()=0;
+    virtual void spezifie_robot_groups()=0;
+    
+
+
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot/decorators/panda_decorator.h b/include/robot/decorators/panda_decorator.h
new file mode 100644
index 0000000000000000000000000000000000000000..baa6ebf8c9ccdc090b9329a3499aa25f8a2301ae
--- /dev/null
+++ b/include/robot/decorators/panda_decorator.h
@@ -0,0 +1,19 @@
+#ifndef PANDA_DECORATOR_
+#define PANDA_DECORATOR_
+
+#include "ros/ros.h"
+#include "robot/abstract_robot.h"
+#include "robot/decorators/abstract_robot_decorator.h"
+
+
+class Panda_decorator  : public Abstract_robot_decorator{
+    public:
+    Panda_decorator(std::unique_ptr<Abstract_robot> next);
+
+    void spezifie_root_bounds() override;
+    void spezifie_robot_groups() override;
+
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/abstract_robot_element.h b/include/robot_element/abstract_robot_element.h
new file mode 100644
index 0000000000000000000000000000000000000000..59aa4a9e45707d33890218ee32adb1266bfa866d
--- /dev/null
+++ b/include/robot_element/abstract_robot_element.h
@@ -0,0 +1,41 @@
+#ifndef ABSTRACT_ROBOT_ELEMENT_
+#define ABSTRACT_ROBOT_ELEMENT_
+
+#include "ros/ros.h"
+#include <tf2/LinearMath/Transform.h>
+
+class Abstract_robot_element {
+    protected:
+    std::string name_;
+    tf2::Transform relative_tf_;
+    tf2::Transform world_tf_;
+    tf2::Vector3 size_;
+
+    std::vector<tf2::Transform> bounds_;
+
+    public:
+    Abstract_robot_element(tf2::Transform tf, std::string name, tf2::Vector3 size) 
+    : relative_tf_(tf)
+    , name_(name)
+    , size_(size)
+    , world_tf_(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0))) {}
+
+    
+    inline tf2::Transform& relative_tf(){ return relative_tf_;}
+    inline void set_relative_tf(tf2::Transform tf) { relative_tf_= tf;}
+
+    inline void calc_world_tf(tf2::Transform& tf) {world_tf_= tf * relative_tf_;}
+    inline void set_world_tf(tf2::Transform& tf) { world_tf_ = tf;}
+
+
+    virtual std::vector<tf2::Transform>& bounds()=0;
+    virtual tf2::Transform& world_tf()=0;
+    virtual tf2::Vector3& size()=0;
+    virtual std::string& name()=0;
+
+
+    virtual void update(tf2::Transform& tf)= 0;
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/decorators/abstract_robot_element_decorator.h b/include/robot_element/decorators/abstract_robot_element_decorator.h
new file mode 100644
index 0000000000000000000000000000000000000000..8d2d6c04b24b50cb8808a03457e1f23f30b01fd7
--- /dev/null
+++ b/include/robot_element/decorators/abstract_robot_element_decorator.h
@@ -0,0 +1,32 @@
+#ifndef ABSTRACT_ROBOT_ELEMENT_DECORATOR_
+#define ABSTRACT_ROBOT_ELEMENT_DECORATOR_
+
+#include "ros/ros.h"
+#include "robot_element/abstract_robot_element.h"
+
+class Abstract_robot_element_decorator  : public Abstract_robot_element{
+    protected:
+    std::shared_ptr<ros::NodeHandle> nh_;
+    std::unique_ptr<Abstract_robot_element> next_;
+
+
+    public:
+    Abstract_robot_element_decorator(std::unique_ptr<Abstract_robot_element> next) 
+    : Abstract_robot_element(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), "Blanc", tf2::Vector3(0,0,0))
+    , next_(std::move(next)){};
+    
+    inline Abstract_robot_element* next(){return next_.get();}
+
+    std::vector<tf2::Transform>& bounds() override {return next_->bounds();}
+    tf2::Transform& world_tf() override {return next_->world_tf();}
+    std::string& name() override {return next_->name();}
+    tf2::Vector3& size() override {return next_->size();}
+
+
+    virtual void input_filter()=0;
+    void update(tf2::Transform& tf) override {next_->update(tf);}
+    virtual void output_filter()=0;
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/decorators/log_decorator.h b/include/robot_element/decorators/log_decorator.h
new file mode 100644
index 0000000000000000000000000000000000000000..150a9a581ca35c0cae3d4d92a2852234fb83b4fa
--- /dev/null
+++ b/include/robot_element/decorators/log_decorator.h
@@ -0,0 +1,18 @@
+#ifndef LOG_DECORATOR_
+#define LOG_DECORATOR_
+
+#include "ros/ros.h"
+#include "visualization_msgs/Marker.h"
+#include "robot_element/decorators/abstract_robot_element_decorator.h"
+
+class Log_decorator  : public Abstract_robot_element_decorator{
+
+    public:
+    Log_decorator(std::unique_ptr<Abstract_robot_element> next);
+    void input_filter() override;
+    void update(tf2::Transform& tf) override;
+    void output_filter() override;
+};
+
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/observers/field.h b/include/robot_element/observers/field.h
new file mode 100644
index 0000000000000000000000000000000000000000..a4459b591e720f0d24d206afdbd53fdea65d7872
--- /dev/null
+++ b/include/robot_element/observers/field.h
@@ -0,0 +1,23 @@
+#ifndef FIELD_
+#define FIELD_
+
+#include "ros/ros.h"
+#include "robot_element/abstract_robot_element.h"
+
+class Field  : public Abstract_robot_element{
+    public:
+    Field(tf2::Transform tf);
+        
+    inline void set_name(std::string str) {name_ = str;}
+    inline void set_set(tf2::Vector3& vec) {size_ = vec;}
+
+    void update(tf2::Transform& tf) override {this->calc_world_tf(tf);}
+    
+    std::vector<tf2::Transform>& bounds() override {return bounds_;}
+    tf2::Transform& world_tf() override {return world_tf_;};
+    std::string& name() override {return name_;}
+    tf2::Vector3& size() override {return size_;}
+
+};
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/observers/moveit_panel.h b/include/robot_element/observers/moveit_panel.h
new file mode 100644
index 0000000000000000000000000000000000000000..2e983dae9833f6305dd8f26ba0d6ea551132dbfa
--- /dev/null
+++ b/include/robot_element/observers/moveit_panel.h
@@ -0,0 +1,24 @@
+#ifndef MOVEIT_PANEL_
+#define MOVEIT_PANEL_
+
+#include "ros/ros.h"
+#include "robot_element/abstract_robot_element.h"
+#include "robot_element/observers/panel.h"
+
+#include <moveit/planning_scene_interface/planning_scene_interface.h>
+#include <moveit/move_group_interface/move_group_interface.h>
+#include <moveit_msgs/ApplyPlanningScene.h>
+#include <moveit/planning_scene/planning_scene.h>
+
+class Moveit_panel  : public Panel{
+    protected:
+    moveit_msgs::CollisionObject marker_;
+
+    public:
+    Moveit_panel(std::string name, tf2::Transform tf, tf2::Vector3 size);
+    void update(tf2::Transform& tf) override;
+
+    inline moveit_msgs::CollisionObject& marker() {return marker_;}
+};
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/observers/panel.h b/include/robot_element/observers/panel.h
new file mode 100644
index 0000000000000000000000000000000000000000..5c8e3e16a9e4f89e883cb1c85eeee6c94ba9eef0
--- /dev/null
+++ b/include/robot_element/observers/panel.h
@@ -0,0 +1,23 @@
+#ifndef PANEL_
+#define PANEL_
+
+#include "ros/ros.h"
+#include "robot_element/abstract_robot_element.h"
+
+class Panel  : public Abstract_robot_element{
+    public:
+    Panel(std::string name, tf2::Transform tf, tf2::Vector3 size);
+        
+    inline void set_name(std::string str) {name_ = str;}
+    inline void set_set(tf2::Vector3& vec) {size_ = vec;}
+
+    void update(tf2::Transform& tf) override {this->calc_world_tf(tf);}
+    
+    std::vector<tf2::Transform>& bounds() override {return bounds_;}
+    tf2::Transform& world_tf() override {return world_tf_;};
+    std::string& name() override {return name_;}
+    tf2::Vector3& size() override {return size_;}
+
+};
+
+#endif
\ No newline at end of file
diff --git a/include/robot_element/observers/rviz_panel.h b/include/robot_element/observers/rviz_panel.h
new file mode 100644
index 0000000000000000000000000000000000000000..f09a0783407fcf0a5b0dee73b18cedd28b21a345
--- /dev/null
+++ b/include/robot_element/observers/rviz_panel.h
@@ -0,0 +1,22 @@
+#ifndef RVIZ_PANEL_
+#define RVIZ_PANEL_
+
+#include "ros/ros.h"
+#include "robot_element/observers/panel.h"
+#include "visualization_msgs/MarkerArray.h"
+
+
+
+class Rviz_panel  : public Panel{
+    protected:
+    visualization_msgs::Marker marker_;
+
+    public:
+    Rviz_panel(std::string name, tf2::Transform tf, tf2::Vector3 size);
+    void update(tf2::Transform& tf) override;
+
+    inline visualization_msgs::Marker& marker() {return marker_;}
+
+};
+
+#endif
\ No newline at end of file
diff --git a/launch/base_calculation_approach.launch b/launch/base_calculation_approach.launch
new file mode 100644
index 0000000000000000000000000000000000000000..6f740664632d90a8ad46523f00416b55244ce9d1
--- /dev/null
+++ b/launch/base_calculation_approach.launch
@@ -0,0 +1,13 @@
+<launch>
+    <arg name="map" default="dummy.yaml" />
+    <arg name="description" default="dummy.yaml" />
+    <arg name="resource" default="dummy" />
+
+
+    <rosparam command="load" file="$(find multi_cell_builder)/maps/$(arg map)"/>
+    <rosparam command="load" file="$(find multi_cell_builder)/descriptions/$(arg description)"/>
+    <rosparam command="load" file="$(find multi_cell_builder)/resources/$(arg resource).yaml"/>
+
+    <rosparam param="resource_name" subst_value="True"> $(arg resource)</rosparam>
+    <node pkg="multi_cell_builder" type="robot_base_calculation_approach" name="robot_base_calculation_approach" output="screen" required="true"/>
+</launch>
\ No newline at end of file
diff --git a/launch/cell_routine.launch b/launch/cell_routine.launch
index 64ed8c3725cbaf8bd23dbaff4e4267a70feeb9d1..373d6c3c27d1e7d073dee7ae2295b564ad27ec17 100644
--- a/launch/cell_routine.launch
+++ b/launch/cell_routine.launch
@@ -27,9 +27,6 @@
         <arg name="rviz_config" value="$(find multi_cell_builder)/launch/rviz/cell_routine.rviz" />
     </include>
 
-    <node pkg="groot" type="Groot" name="Groot" output="screen" required="true">
-    </node>
-
     <node pkg="multi_cell_builder" type="cell_routine" name="cell_routine" output="screen" required="true">
     </node>
 </launch>
diff --git a/maps/dummy.yaml b/maps/dummy.yaml
index 8755ac2136ce0457f4379bfcf1ea4ae521a9edc5..712e23ef6cd712e9c29b8371ba6ca4976fb6bd97 100644
--- a/maps/dummy.yaml
+++ b/maps/dummy.yaml
@@ -1,6870 +1,6866 @@
-description:
-  system: Franka Emika 'Panda'
-  resolution: 0.2
-  dimension: 1.200000 1.200000 1.200000 (m)
-  timestamp: 26142.007148 sec
-data:
-  - -1.200000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.200000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.200000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.200000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.200000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.200000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.200000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.200000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -1.000000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -1.000000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -1.000000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -1.000000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -1.000000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -1.000000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -1.000000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.800000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.800000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.800000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.800000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.800000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.800000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.800000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.600000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.600000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.600000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.600000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.600000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.600000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.600000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.400000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.400000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.400000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.400000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.400000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.400000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.400000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.200000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.200000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.200000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.200000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.200000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.200000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.200000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - -0.000000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - -0.000000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - -0.000000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - -0.000000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - -0.000000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - -0.000000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - -0.000000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.200000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.200000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.200000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.200000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.200000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.200000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.200000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.400000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.400000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.400000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.400000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.400000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.400000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.400000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.600000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.600000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.600000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.600000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.600000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.600000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.600000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 -0.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 -0.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 -0.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 -0.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 -0.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 -0.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 -0.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.400000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.400000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.400000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.400000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.400000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.400000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.400000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.600000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.600000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.600000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.600000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.600000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.600000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.600000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 0.800000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 0.800000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 0.800000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 0.800000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 0.800000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 0.800000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 0.800000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.000000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.000000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.000000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.000000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.000000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.000000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.000000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 0.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 0.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 0.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 0.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 0.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 0.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 0.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 0.885000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 1.085000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 1.085000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.085000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 1.085000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 1.085000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 1.085000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.085000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 1.085000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 1.285000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 1.285000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.285000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 1.285000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 1.285000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 1.285000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.285000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 1.285000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 1.485000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 1.485000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.485000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 1.485000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 1.485000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 1.485000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.485000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 1.485000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 1.685000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 1.685000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.685000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 1.685000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 1.685000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 1.685000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.685000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 1.685000 -0.707107 -0.707107 0.000000 -0.000000
-  - 0.800000 1.200000 1.885000 0.000000 0.707107 0.000000 0.707107
-  - 0.800000 1.200000 1.885000 0.000000 1.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.885000 -0.500000 0.500000 0.500000 0.500000
-  - 0.800000 1.200000 1.885000 -0.707107 0.707107 0.000000 0.000000
-  - 0.800000 1.200000 1.885000 -0.707107 0.000000 0.707107 0.000000
-  - 0.800000 1.200000 1.885000 -1.000000 0.000000 0.000000 0.000000
-  - 0.800000 1.200000 1.885000 -0.500000 -0.500000 0.500000 -0.500000
-  - 0.800000 1.200000 1.885000 -0.707107 -0.707107 0.000000 -0.000000
\ No newline at end of file
+{ 'data': [ 
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -1, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': -0, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.2, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.4, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.6, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': -0, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.4, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.6, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 0.8, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 0.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.085 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.285 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.485 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.685 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 0.707107, 'z': 0, 'w': 0.707107 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': 0, 'y': 1, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': 0.5, 'z': 0.5, 'w': 0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0.707107, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': 0, 'z': 0.707107, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -1, 'y': 0, 'z': 0, 'w': 0 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.5, 'y': -0.5, 'z': 0.5, 'w': -0.5 } },
+{'pos': { 'x': 0.8, 'y': 1.2, 'z': 1.885 }, 'orientation': {'x': -0.707107, 'y': -0.707107, 'z': 0, 'w': -0 } }
+] }
\ No newline at end of file
diff --git a/package.xml b/package.xml
index 4e3f59cb597edeedb4e5ad6e9c48138441c6969c..80f22b71a8119d9f7451eae5ac034c728e030c3a 100644
--- a/package.xml
+++ b/package.xml
@@ -32,8 +32,6 @@
   <build_depend>moveit_task_constructor_visualization</build_depend>
   <build_depend>pcl_ros</build_depend>
   <build_depend>moveit_task_constructor_core</build_depend>
-  <build_depend>behaviortree_cpp_v3</build_depend>
-
 
 
   <build_depend>moveit_task_constructor_capabilities</build_depend>
@@ -44,7 +42,7 @@
   <run_depend>moveit_grasps</run_depend>
   <run_depend>moveit_grasps_filter</run_depend>
 
-  <run_depend>behaviortree_cpp_v3</run_depend>
+
   <run_depend>moveit_ros_planning_interface</run_depend>
   <run_depend>filesystem</run_depend> 
   <run_depend>pcl_ros</run_depend>
diff --git a/results/dummy/-1656836011.yaml b/results/dummy/-1849849698.yaml
similarity index 100%
rename from results/dummy/-1656836011.yaml
rename to results/dummy/-1849849698.yaml
diff --git a/results/dummy/-1671801501.yaml b/results/dummy/-1862573883.yaml
similarity index 100%
rename from results/dummy/-1671801501.yaml
rename to results/dummy/-1862573883.yaml
diff --git a/results/dummy/-1683824376.yaml b/results/dummy/-1874072867.yaml
similarity index 100%
rename from results/dummy/-1683824376.yaml
rename to results/dummy/-1874072867.yaml
diff --git a/results/dummy/-1706168228.yaml b/results/dummy/-1895357397.yaml
similarity index 100%
rename from results/dummy/-1706168228.yaml
rename to results/dummy/-1895357397.yaml
diff --git a/results/dummy/-1719483923.yaml b/results/dummy/-1907972410.yaml
similarity index 100%
rename from results/dummy/-1719483923.yaml
rename to results/dummy/-1907972410.yaml
diff --git a/results/dummy/-1731052042.yaml b/results/dummy/-1919217707.yaml
similarity index 100%
rename from results/dummy/-1731052042.yaml
rename to results/dummy/-1919217707.yaml
diff --git a/results/dummy/-1779240138.yaml b/results/dummy/-1964174656.yaml
similarity index 100%
rename from results/dummy/-1779240138.yaml
rename to results/dummy/-1964174656.yaml
diff --git a/results/dummy/-1825479086.yaml b/results/dummy/-2008935990.yaml
similarity index 100%
rename from results/dummy/-1825479086.yaml
rename to results/dummy/-2008935990.yaml
diff --git a/results/dummy/-774785188.yaml b/results/dummy/-30260870.yaml
similarity index 100%
rename from results/dummy/-774785188.yaml
rename to results/dummy/-30260870.yaml
diff --git a/results/dummy/-788555850.yaml b/results/dummy/-43834779.yaml
similarity index 100%
rename from results/dummy/-788555850.yaml
rename to results/dummy/-43834779.yaml
diff --git a/results/dummy/-562289182.yaml b/results/dummy/-562289182.yaml
index 0c4d30ebff322badd6bc12475191d9e017c46ecd..92a6d380f2ab50b7a98a558a4136483f21a290f4 100644
--- a/results/dummy/-562289182.yaml
+++ b/results/dummy/-562289182.yaml
@@ -25,4 +25,3 @@
 { 'id': 'blue1',  'type': 'BOX', 'pos': { 'x':  -0.3, 'y': -0.7, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'b': 1 } }, # target B
 { 'id': 'blue2',  'type': 'BOX', 'pos': { 'x':  0.1, 'y':  1.11, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'b': 1 } } # target B
 ]}
-
diff --git a/results/dummy/123006295.yaml b/results/dummy/100743399.yaml
similarity index 100%
rename from results/dummy/123006295.yaml
rename to results/dummy/100743399.yaml
diff --git a/results/dummy/319613316.yaml b/results/dummy/1042059347.yaml
similarity index 100%
rename from results/dummy/319613316.yaml
rename to results/dummy/1042059347.yaml
diff --git a/results/dummy/368603087.yaml b/results/dummy/1089729317.yaml
similarity index 100%
rename from results/dummy/368603087.yaml
rename to results/dummy/1089729317.yaml
diff --git a/results/dummy/-683068383.yaml b/results/dummy/110820614.yaml
similarity index 100%
rename from results/dummy/-683068383.yaml
rename to results/dummy/110820614.yaml
diff --git a/results/dummy/137600073.yaml b/results/dummy/113568260.yaml
similarity index 100%
rename from results/dummy/137600073.yaml
rename to results/dummy/113568260.yaml
diff --git a/results/dummy/-848791479.yaml b/results/dummy/12242866.yaml
similarity index 100%
rename from results/dummy/-848791479.yaml
rename to results/dummy/12242866.yaml
diff --git a/results/dummy/-671037754.yaml b/results/dummy/122897280.yaml
similarity index 100%
rename from results/dummy/-671037754.yaml
rename to results/dummy/122897280.yaml
diff --git a/results/dummy/1353640318.yaml b/results/dummy/1253908101.yaml
similarity index 100%
rename from results/dummy/1353640318.yaml
rename to results/dummy/1253908101.yaml
diff --git a/results/dummy/1365341001.yaml b/results/dummy/1265184395.yaml
similarity index 100%
rename from results/dummy/1365341001.yaml
rename to results/dummy/1265184395.yaml
diff --git a/results/dummy/551994162.yaml b/results/dummy/1265903332.yaml
similarity index 100%
rename from results/dummy/551994162.yaml
rename to results/dummy/1265903332.yaml
diff --git a/results/dummy/1378781438.yaml b/results/dummy/1277835652.yaml
similarity index 100%
rename from results/dummy/1378781438.yaml
rename to results/dummy/1277835652.yaml
diff --git a/results/dummy/1401169642.yaml b/results/dummy/1299300774.yaml
similarity index 100%
rename from results/dummy/1401169642.yaml
rename to results/dummy/1299300774.yaml
diff --git a/results/dummy/1413511427.yaml b/results/dummy/1310831107.yaml
similarity index 100%
rename from results/dummy/1413511427.yaml
rename to results/dummy/1310831107.yaml
diff --git a/results/dummy/606403650.yaml b/results/dummy/1313903620.yaml
similarity index 100%
rename from results/dummy/606403650.yaml
rename to results/dummy/1313903620.yaml
diff --git a/results/dummy/1427045874.yaml b/results/dummy/1328318299.yaml
similarity index 100%
rename from results/dummy/1427045874.yaml
rename to results/dummy/1328318299.yaml
diff --git a/results/dummy/104202925.yaml b/results/dummy/134829619.yaml
similarity index 100%
rename from results/dummy/104202925.yaml
rename to results/dummy/134829619.yaml
diff --git a/results/dummy/-657407479.yaml b/results/dummy/136577812.yaml
similarity index 100%
rename from results/dummy/-657407479.yaml
rename to results/dummy/136577812.yaml
diff --git a/results/dummy/759458158.yaml b/results/dummy/1454067317.yaml
similarity index 100%
rename from results/dummy/759458158.yaml
rename to results/dummy/1454067317.yaml
diff --git a/results/dummy/170127937.yaml b/results/dummy/146125988.yaml
similarity index 100%
rename from results/dummy/170127937.yaml
rename to results/dummy/146125988.yaml
diff --git a/results/dummy/810620021.yaml b/results/dummy/1501775840.yaml
similarity index 100%
rename from results/dummy/810620021.yaml
rename to results/dummy/1501775840.yaml
diff --git a/results/dummy/886121610.yaml b/results/dummy/1583165857.yaml
similarity index 100%
rename from results/dummy/886121610.yaml
rename to results/dummy/1583165857.yaml
diff --git a/results/dummy/182858545.yaml b/results/dummy/158934644.yaml
similarity index 100%
rename from results/dummy/182858545.yaml
rename to results/dummy/158934644.yaml
diff --git a/results/dummy/939241980.yaml b/results/dummy/1630873820.yaml
similarity index 100%
rename from results/dummy/939241980.yaml
rename to results/dummy/1630873820.yaml
diff --git a/results/dummy/-620298450.yaml b/results/dummy/173604779.yaml
similarity index 100%
rename from results/dummy/-620298450.yaml
rename to results/dummy/173604779.yaml
diff --git a/results/dummy/1961728642.yaml b/results/dummy/1819491281.yaml
similarity index 100%
rename from results/dummy/1961728642.yaml
rename to results/dummy/1819491281.yaml
diff --git a/results/dummy/1973258416.yaml b/results/dummy/1830780260.yaml
similarity index 100%
rename from results/dummy/1973258416.yaml
rename to results/dummy/1830780260.yaml
diff --git a/results/dummy/1986420314.yaml b/results/dummy/1843488272.yaml
similarity index 100%
rename from results/dummy/1986420314.yaml
rename to results/dummy/1843488272.yaml
diff --git a/results/dummy/-549849544.yaml b/results/dummy/185694474.yaml
similarity index 100%
rename from results/dummy/-549849544.yaml
rename to results/dummy/185694474.yaml
diff --git a/results/dummy/2009012393.yaml b/results/dummy/1867405077.yaml
similarity index 100%
rename from results/dummy/2009012393.yaml
rename to results/dummy/1867405077.yaml
diff --git a/results/dummy/1183733496.yaml b/results/dummy/1873416773.yaml
similarity index 100%
rename from results/dummy/1183733496.yaml
rename to results/dummy/1873416773.yaml
diff --git a/results/dummy/2020890621.yaml b/results/dummy/1878675406.yaml
similarity index 100%
rename from results/dummy/2020890621.yaml
rename to results/dummy/1878675406.yaml
diff --git a/results/dummy/2037862740.yaml b/results/dummy/1891533591.yaml
similarity index 100%
rename from results/dummy/2037862740.yaml
rename to results/dummy/1891533591.yaml
diff --git a/results/dummy/1237434762.yaml b/results/dummy/1922064994.yaml
similarity index 100%
rename from results/dummy/1237434762.yaml
rename to results/dummy/1922064994.yaml
diff --git a/results/dummy/-535885623.yaml b/results/dummy/199357895.yaml
similarity index 100%
rename from results/dummy/-535885623.yaml
rename to results/dummy/199357895.yaml
diff --git a/results/dummy/235473380.yaml b/results/dummy/203667923.yaml
similarity index 100%
rename from results/dummy/235473380.yaml
rename to results/dummy/203667923.yaml
diff --git a/results/dummy/-811317163.yaml b/results/dummy/207866.yaml
similarity index 100%
rename from results/dummy/-811317163.yaml
rename to results/dummy/207866.yaml
diff --git a/results/dummy/-2642749.yaml b/results/dummy/221618548.yaml
similarity index 62%
rename from results/dummy/-2642749.yaml
rename to results/dummy/221618548.yaml
index 89be48e96023a389f31ea575add6333744ab1807..3b44962e51121df05778c0bbe94e2dd2bdcb38fd 100644
--- a/results/dummy/-2642749.yaml
+++ b/results/dummy/221618548.yaml
@@ -7,7 +7,7 @@
 { 'id' : 'table1_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table1_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table1_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
-{ 'id' : 'table1_table_top', 'pos': { 'x': -0.000002 , 'y': -0.200002 , 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000 , 'p': -0.000000 , 'y': 0.000002 } },
+{ 'id' : 'table1_table_top', 'pos': { 'x': -0.100002 , 'y': 0.099998 , 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000 , 'p': -0.000000 , 'y': 0.000002 } },
 { 'id' : 'table2_wheel_1', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_wheel_2', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }},
 { 'id' : 'table2_wheel_3', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
@@ -16,17 +16,10 @@
 { 'id' : 'table2_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
-{ 'id' : 'table2_table_top', 'pos': { 'x': -0.000005, 'y': 1.104998, 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000, 'p': -0.000000, 'y': 0.000003}},
-{ 'id': 'table1_right_panel' , 'pos': { 'x': -0.000004 , 'y': 0.452498 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
-{ 'id': 'table1_left_panel' , 'pos': { 'x': -0.000000 , 'y': -0.852502 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
-{ 'id': 'table2_right_panel',  'pos': { 'x': -0.000007, 'y': 1.757498 , 'z': 0.885000 },'size': { 'length': 0.700000,'width': 0.500000,'height': 0.010000 },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 } }, 
-{ 'id': 'arm1','type': 'ARM','pos': { 'x': -0.220002, 'y': -0.200003, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } }, 
-{ 'id': 'arm2','type': 'ARM','pos': { 'x': -0.220005, 'y': 1.104997, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } },
-  { 'id': 'blue1',  'type': 'BOX', 'pos': { 'x':  .1, 'y': -.7, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'b': 1 } }, # target B
-  { 'id': 'blue2',  'type': 'BOX', 'pos': { 'x':  .2, 'y':  .3, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'b': 1 } }, # target B
-  { 'id': 'blue3',  'type': 'BOX', 'pos': { 'x':  .2, 'y': -.1, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'b': 1 } }, # impossible for the target B
-  { 'id': 'green1', 'type': 'BOX', 'pos': { 'x':  .2, 'y': -.3, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'g': 1 } },
-  { 'id': 'green2', 'type': 'BOX', 'pos': { 'x':  .1, 'y':  1.91, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'g': 1 } },
-  { 'id': 'red1',   'type': 'BOX', 'pos': { 'x': -.3, 'y': -.6, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'r': 1 } },
-  { 'id': 'red2',   'type': 'BOX', 'pos': { 'x':  .3, 'y':  1.41, 'z': 0.935500 },'size': { 'length': .0318, 'width': .0636, 'height': 0.091000 },'orientation': { 'w': 1 },'color': { 'r': 1 } }
+{ 'id' : 'table2_table_top', 'pos': { 'x': -0.100005, 'y': 1.404998, 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000, 'p': -0.000000, 'y': 0.000003}},
+{ 'id': 'table1_right_panel' , 'pos': { 'x': -0.100004 , 'y': 0.752498 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
+{ 'id': 'table1_left_panel' , 'pos': { 'x': -0.100000 , 'y': -0.552502 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
+{ 'id': 'table2_right_panel',  'pos': { 'x': -0.100007, 'y': 2.057498 , 'z': 0.885000 },'size': { 'length': 0.700000,'width': 0.500000,'height': 0.010000 },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 } }, 
+{ 'id': 'arm1','type': 'ARM','pos': { 'x': -0.320002, 'y': 0.099997, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } }, 
+{ 'id': 'arm2','type': 'ARM','pos': { 'x': -0.320005, 'y': 1.404997, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } } 
 ]}
\ No newline at end of file
diff --git a/results/dummy/-606671318.yaml b/results/dummy/233620018.yaml
similarity index 100%
rename from results/dummy/-606671318.yaml
rename to results/dummy/233620018.yaml
diff --git a/results/dummy/-586491524.yaml b/results/dummy/247158763.yaml
similarity index 100%
rename from results/dummy/-586491524.yaml
rename to results/dummy/247158763.yaml
diff --git a/results/dummy/283969420.yaml b/results/dummy/255070954.yaml
similarity index 100%
rename from results/dummy/283969420.yaml
rename to results/dummy/255070954.yaml
diff --git a/results/dummy/-834662166.yaml b/results/dummy/25799385.yaml
similarity index 100%
rename from results/dummy/-834662166.yaml
rename to results/dummy/25799385.yaml
diff --git a/results/dummy/439026223.yaml b/results/dummy/405558745.yaml
similarity index 100%
rename from results/dummy/439026223.yaml
rename to results/dummy/405558745.yaml
diff --git a/results/dummy/484352725.yaml b/results/dummy/450502853.yaml
similarity index 100%
rename from results/dummy/484352725.yaml
rename to results/dummy/450502853.yaml
diff --git a/results/dummy/-732517591.yaml b/results/dummy/62902763.yaml
similarity index 100%
rename from results/dummy/-732517591.yaml
rename to results/dummy/62902763.yaml
diff --git a/results/dummy/-14976433.yaml b/results/dummy/716580439.yaml
similarity index 100%
rename from results/dummy/-14976433.yaml
rename to results/dummy/716580439.yaml
diff --git a/results/dummy/48584069.yaml b/results/dummy/727969388.yaml
similarity index 100%
rename from results/dummy/48584069.yaml
rename to results/dummy/727969388.yaml
diff --git a/results/dummy/-720385548.yaml b/results/dummy/74847185.yaml
similarity index 100%
rename from results/dummy/-720385548.yaml
rename to results/dummy/74847185.yaml
diff --git a/results/dummy/36088905.yaml b/results/dummy/764138298.yaml
similarity index 100%
rename from results/dummy/36088905.yaml
rename to results/dummy/764138298.yaml
diff --git a/results/dummy/-861416902.yaml b/results/dummy/775503079.yaml
similarity index 88%
rename from results/dummy/-861416902.yaml
rename to results/dummy/775503079.yaml
index 7b7da08be213b300474e31c5b3c9c8e6984e6f6b..cb62992cd4b5c4bd51f66897923e42b77d02c4b4 100644
--- a/results/dummy/-861416902.yaml
+++ b/results/dummy/775503079.yaml
@@ -7,7 +7,7 @@
 { 'id' : 'table1_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table1_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table1_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
-{ 'id' : 'table1_table_top', 'pos': { 'x': -0.100002 , 'y': -0.100002 , 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000 , 'p': -0.000000 , 'y': 0.000002 } },
+{ 'id' : 'table1_table_top', 'pos': { 'x': -0.000002 , 'y': -0.200002 , 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000 , 'p': -0.000000 , 'y': 0.000002 } },
 { 'id' : 'table2_wheel_1', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_wheel_2', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }},
 { 'id' : 'table2_wheel_3', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
@@ -16,10 +16,10 @@
 { 'id' : 'table2_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
 { 'id' : 'table2_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, 
-{ 'id' : 'table2_table_top', 'pos': { 'x': -0.100005, 'y': 1.204998, 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000, 'p': -0.000000, 'y': 0.000003}},
-{ 'id': 'table1_right_panel' , 'pos': { 'x': -0.100004 , 'y': 0.552498 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
-{ 'id': 'table1_left_panel' , 'pos': { 'x': -0.100000 , 'y': -0.752502 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
-{ 'id': 'table2_right_panel',  'pos': { 'x': -0.100007, 'y': 1.857498 , 'z': 0.885000 },'size': { 'length': 0.700000,'width': 0.500000,'height': 0.010000 },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 } }, 
-{ 'id': 'arm1','type': 'ARM','pos': { 'x': -0.320002, 'y': -0.100003, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } }, 
-{ 'id': 'arm2','type': 'ARM','pos': { 'x': -0.320005, 'y': 1.204997, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } } 
+{ 'id' : 'table2_table_top', 'pos': { 'x': -0.000005, 'y': 1.104998, 'z': 0.885000 },'size': { 'length': 0.800000 ,'width': 0.800000 ,'height': 0.010000 },'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': 0.000000, 'p': -0.000000, 'y': 0.000003}},
+{ 'id': 'table1_right_panel' , 'pos': { 'x': -0.000004 , 'y': 0.452498 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
+{ 'id': 'table1_left_panel' , 'pos': { 'x': -0.000000 , 'y': -0.852502 , 'z': 0.885000 } , 'size': { 'length': 0.700000 , 'width': 0.500000 , 'height': 0.010000 } , 'orientation': { 'x': 0.000000 , 'y': 0.000000 , 'z': 0.000001 , 'w': 1.000000 } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, 
+{ 'id': 'table2_right_panel',  'pos': { 'x': -0.000007, 'y': 1.757498 , 'z': 0.885000 },'size': { 'length': 0.700000,'width': 0.500000,'height': 0.010000 },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 } }, 
+{ 'id': 'arm1','type': 'ARM','pos': { 'x': -0.220002, 'y': -0.200003, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } }, 
+{ 'id': 'arm2','type': 'ARM','pos': { 'x': -0.220005, 'y': 1.104997, 'z': 0.89 },'size': { },'orientation': { 'x': 0.000000, 'y': 0.000000, 'z': 0.000001, 'w': 1.000000 },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } } 
 ]}
\ No newline at end of file
diff --git a/results/dummy/-706760442.yaml b/results/dummy/88521798.yaml
similarity index 100%
rename from results/dummy/-706760442.yaml
rename to results/dummy/88521798.yaml
diff --git a/results/dummy/158824668.yaml b/results/dummy/89393595.yaml
similarity index 100%
rename from results/dummy/158824668.yaml
rename to results/dummy/89393595.yaml
diff --git a/src/base_bridge/simple_base.cpp b/src/base_bridge/simple_base.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..016ccd0ceeb704438d7f47b2cee9481f495d5c2a
--- /dev/null
+++ b/src/base_bridge/simple_base.cpp
@@ -0,0 +1,103 @@
+#include "bridge/simple_base.h"
+#include "bridge/abstract_base_implementation.h"
+
+Simple_base::Simple_base(std::shared_ptr<ros::NodeHandle> const& d)
+    : Abstract_base(d)
+    , task_space_reader_(std::make_unique<Ts_reader>(d))
+    , map_reader_(std::make_unique<Map_reader>(d))
+    {
+        map_= map_reader_->map_data();
+        ROS_INFO("=> RM is known");
+
+        for (auto& s_vod:task_space_reader_->drop_off_data()){
+            std::vector<std::pair<object_data, std::vector<tf2::Quaternion>>> vod_q;
+            for(auto& od: s_vod.second) vod_q.push_back(std::pair<object_data, std::vector<tf2::Quaternion>>(od, std::vector<tf2::Quaternion>()));
+            task_space_.insert(std::pair< const std::string, std::vector<std::pair<object_data, std::vector<tf2::Quaternion>>>>(s_vod.first,vod_q));
+        }
+        ROS_INFO("=> TS is known");
+    }
+
+void Simple_base::base_calculation(){
+
+    implementation_->set_grasp_orientations(task_space_);
+    ROS_INFO("=> grasp rotations from implenentation object set...");
+
+
+    implementation_->inv_map_creation(map_, inv_map_, task_space_);
+    ROS_INFO("=> inverse map is set...");
+
+    implementation_->cloud_calculation(inv_map_, task_space_, target_cloud_);
+    ROS_INFO("=> clouds are formed...");
+    
+
+    ROS_INFO("init voxel...");
+    std::vector<pcl::PointXYZ> voxelization = this->create_pcl_box();
+
+    std::map<const std::string, std::vector<std::vector<int>>> base_target_map;
+    for (auto& ts: task_space_){
+        base_target_map.insert(std::pair<const std::string, std::vector<std::vector<int>>>(ts.first, std::vector<std::vector<int>>(voxelization.size())));
+    }
+    
+    ROS_INFO("start cloud quantization...");
+    for (auto& s_vc: target_cloud_){
+        for(long unsigned int j = 0; j < target_cloud_.at(s_vc.first).size();j++){
+            pcl::octree::OctreePointCloudSearch<pcl::PointXYZ> octree(0.2f);
+            octree.setInputCloud(target_cloud_.at(s_vc.first)[j]);
+            octree.addPointsFromInputCloud();
+            double min_x, min_y, min_z, max_x, max_y, max_z;
+            octree.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);
+            for(long unsigned int k = 0; k < voxelization.size(); k++) {
+                pcl::PointXYZ p = voxelization[k];
+                bool isInBox = (p.x >= min_x && p.x <= max_x) && (p.y >= min_y && p.y <= max_y) && (p.z >= min_z && p.z <= max_z);
+                if(isInBox && octree.isVoxelOccupiedAtPoint(p)) {
+                    std::vector< int > pointIdxVec;
+                    if(octree.voxelSearch(p, pointIdxVec)) if(!pointIdxVec.empty()) base_target_map.at(s_vc.first)[k].push_back(j);
+                }
+            }
+        }
+    }
+
+    for(auto& s_bv: base_target_map){
+        std::vector<pcl::PointXYZ> points_per_robot;
+        for(int j = 0; j < base_target_map.at(s_bv.first).size(); j++){
+            if (base_target_map.at(s_bv.first)[j].size() == task_space_.at(s_bv.first).size()) {
+                points_per_robot.push_back(voxelization[j]);
+            }
+        }
+        if (!points_per_robot.empty()) result_.insert(std::pair<const std::string, std::vector<pcl::PointXYZ>>(s_bv.first, points_per_robot));
+    }
+
+    
+
+    for (auto& s_r: result_) {
+        ROS_INFO("%s got %li base positions to ckeck", s_r.first.c_str(), result_.at(s_r.first).size());
+    }
+}
+
+
+std::vector<pcl::PointXYZ> Simple_base::create_pcl_box(){
+    tf2::Vector3 origin(0,0,0);
+    float resolution = 0.4f;
+    float diameter = 3.0f;
+    unsigned char depth = 16;
+    std::vector<pcl::PointXYZ> box; 
+    octomap::OcTree* tree = new octomap::OcTree(resolution/2);
+    for (float x = origin.getX() - diameter * 5 ; x <= origin.getX() + diameter * 5 ; x += resolution){
+        for (float y = origin.getY() - diameter * 5 ; y <= origin.getY() + diameter * 5 ; y += resolution){
+            for (float z = origin.getZ() - diameter * 1.5 ; z <= origin.getZ() + diameter * 1.5 ; z += resolution){
+                octomap::point3d point(x,y,z);
+                tree->updateNode(point, true);
+            }
+        }
+    }
+
+    for (octomap::OcTree::leaf_iterator it = tree->begin_leafs(depth), end = tree->end_leafs(); it != end; ++it){
+        pcl::PointXYZ searchPoint(it.getCoordinate().x(), it.getCoordinate().y(), it.getCoordinate().z());
+        box.push_back(searchPoint);
+    }
+
+    return box;
+}
+
+
+void Simple_base::write_task(Abstract_robot* r){}
diff --git a/src/base_bridge/simple_base_implementation.cpp b/src/base_bridge/simple_base_implementation.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..f99344f4a94559b558cb34bc41cb3c64929e03fb
--- /dev/null
+++ b/src/base_bridge/simple_base_implementation.cpp
@@ -0,0 +1,65 @@
+#include "bridge/simple_base_implementation.h"
+
+void Simple_base_implementation::set_grasp_orientations(std::map<const std::string, std::vector<std::pair<object_data, std::vector<tf2::Quaternion>>>>& var){
+    tf2::Quaternion x_rot(0,0,0,1);
+    tf2::Quaternion y_rot(0,0,0.707,0.707);
+    tf2::Quaternion z_rot(0,-0.707,0,0.707);
+    std::vector<tf2::Quaternion> basic_rot{x_rot, x_rot.inverse(), y_rot, y_rot.inverse(), z_rot.inverse()};
+    ROS_INFO("=> 5 Basic grasp roatations (x, -x, y, -y, -z) ");
+    for(auto&s_od_q: var){
+        for(auto&od_q: s_od_q.second){
+            od_q.second = basic_rot;
+        }
+    }
+}
+
+void Simple_base_implementation::inv_map_creation(std::vector<tf2::Transform>& map, std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space){
+    std::vector<tf2::Transform> trans;
+    for(long unsigned int i = 0; i < map.size(); i++) {
+        for(auto&s_od_q: task_space){
+            for(auto&od_q: s_od_q.second){
+                for(auto&q: od_q.second){
+                    if (q.angle(map[i].getRotation()) < 0.349066f){
+                        inv_map.push_back(tf2::Transform(q, map[i].getOrigin()).inverse());
+                        break;
+                    }
+                }
+            }
+        }
+    }
+
+    ROS_INFO("caculated [inv_map] contains %li entrys...", inv_map.size());
+}
+
+
+void Simple_base_implementation::cloud_calculation(std::vector<tf2::Transform>& inv_map, std::map<const std::string, std::vector<std::pair<object_data,std::vector<tf2::Quaternion>>>>& task_space, std::map<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>& target_cloud){
+    ROS_INFO("initialyze thread implementations...");
+    
+    for(auto& s_od_q: task_space) {
+        std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr> clouds;
+        for(auto& od_q: s_od_q.second) {
+            clouds.push_back(pcl::PointCloud< pcl::PointXYZ >::Ptr(new pcl::PointCloud< pcl::PointXYZ >));
+        }
+        target_cloud.insert(std::pair<const std::string, std::vector<pcl::PointCloud< pcl::PointXYZ >::Ptr>>(s_od_q.first, clouds));
+    }
+
+    // Maybe OpenMP
+    ROS_INFO("start [cloud] calculation...");
+    // ------------------------------------------------------------
+    tf2::Transform root(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0.4425f));
+    // ------------------------------------------------------------
+    for(auto& s_c: target_cloud){
+        for(int i = 0; i < s_c.second.size();i++){
+            for(auto& itf : inv_map){
+                for(auto& r: task_space.at(s_c.first)[i].second){
+                    tf2::Transform target(r, task_space.at(s_c.first)[i].first.pose_.getOrigin());
+                    tf2::Transform base = target * (itf * root);
+                    s_c.second[i]->push_back(pcl::PointXYZ(base.getOrigin().getX(), base.getOrigin().getY(), base.getOrigin().getZ()));
+                }
+            }
+        }
+    }
+    
+    ROS_INFO("[cloud]calculation done...");
+    
+}
diff --git a/src/base_routine.cpp b/src/base_routine.cpp
index f25958900d351bb1d6ca46ffae8e6e0991215629..237b1298031e9f79c40cd340acd441c98dfc9eff 100644
--- a/src/base_routine.cpp
+++ b/src/base_routine.cpp
@@ -28,6 +28,7 @@
 
 
 int main(int argc, char **argv){
+    ROS_INFO("penis");
     ros::init(argc, argv, "base_routine");
     std::shared_ptr<ros::NodeHandle> n(new ros::NodeHandle);
 
@@ -54,14 +55,13 @@ int main(int argc, char **argv){
     mediator->set_dirname(filename);
 
 
-    std::unique_ptr<Abstract_param_reader> robot_reader(new Robot_reader(n));
-    robot_reader->read();
-    std::vector<object_data> rd = static_cast<Robot_reader*>(robot_reader.get())->robot_data();
+    std::unique_ptr<Robot_reader> robot_reader(new Robot_reader(n));
+    auto rd = robot_reader->robot_data();
     for (int i = 0; i < rd.size() ;i++) mediator->connect_robots(new Robot(rd[i].name_, rd[i].pose_, rd[i].size_));
 
-    std::unique_ptr<Abstract_param_reader> wing_reader(new Wing_reader(n));
-    wing_reader->read();
-    auto wd = static_cast<Wing_reader*>(wing_reader.get())->wing_data();
+    /*
+    std::unique_ptr<Wing_reader> wing_reader(new Wing_reader(n));
+    auto wd = wing_reader->wing_data();
 
     for (int i = 0; i < mediator->robots().size(); i++){
         for(object_data& w : wd[i].first){
@@ -69,8 +69,9 @@ int main(int argc, char **argv){
         }
         mediator->robots()[i]->set_observer_mask(static_cast<wing_config>(wd[i].second));
     }
-
     mediator->set_wings(wd);
+    */
+
     mediator->mediate();
 
 
diff --git a/src/bt/execution.cpp b/src/bt/execution.cpp
deleted file mode 100644
index ad9eccec6594b295149cf52a1236ce82fff5b79e..0000000000000000000000000000000000000000
--- a/src/bt/execution.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
-#include "bt/execution.h"
-
-Execution::Execution(const std::string& name, const BT::NodeConfiguration& config)
-    : BT::StatefulActionNode(name, config) {}
-
-
-/*
-BT::NodeStatus Execution::tick() {
-    ROS_INFO("davor");
-    if (it_ != ets_.solution.sub_trajectory.end()){
-        mgi_reference_->execute(it_->trajectory);
-        publisher_reference_->publish(it_->scene_diff);
-        it_++;
-        ROS_INFO("true");
-        return BT::NodeStatus::RUNNING;
-    } else {
-        ROS_INFO("false");
-        return BT::NodeStatus::SUCCESS;
-    }
-};
-*/
-
-BT::NodeStatus Execution::onStart(){
-    if (it_ != ets_.solution.sub_trajectory.end()){
-        std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene> pair(it_->trajectory, it_->scene_diff);
-        executions_->insert_or_assign(mr_reference_->name(), pair);
-        it_++;
-        return BT::NodeStatus::RUNNING;
-    } else {
-        return BT::NodeStatus::SUCCESS;
-    }
- }
-
-    // If onStart() returned RUNNING, we will keep calling
-    // this method until it return something different from RUNNING
-BT::NodeStatus Execution::onRunning(){
-    if (it_ != ets_.solution.sub_trajectory.end()){
-        std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene> pair(it_->trajectory, it_->scene_diff);
-        executions_->insert_or_assign(mr_reference_->name(), pair);
-        it_++;
-        return BT::NodeStatus::RUNNING;
-    } else {
-        return BT::NodeStatus::SUCCESS;
-    }
-}
-
-    // callback to execute if the action was aborted by another node
-void Execution::onHalted(){}
-
-void Execution::init(std::map<std::string, std::pair<moveit_msgs::RobotTrajectory, moveit_msgs::PlanningScene>>* executions ,ros::Publisher* publisher_reference, Moveit_robot* mr_reference, moveit_task_constructor_msgs::ExecuteTaskSolutionGoal& ets) {
-    mr_reference_= mr_reference;
-    publisher_reference_ = publisher_reference;
-    ets_ = ets;
-    it_ = ets_.solution.sub_trajectory.begin();
-    executions_ = executions;
-}
\ No newline at end of file
diff --git a/src/bt/parallel_robot.cpp b/src/bt/parallel_robot.cpp
deleted file mode 100644
index 7e43274b63f68f322989686afc230aaca93bca1d..0000000000000000000000000000000000000000
--- a/src/bt/parallel_robot.cpp
+++ /dev/null
@@ -1,145 +0,0 @@
-#include "bt/parallel_robot.h"
-
-/* Copyright (C) 2015-2018 Michele Colledanchise -  All Rights Reserved
- * Copyright (C) 2018-2020 Davide Faconti, Eurecat -  All Rights Reserved
-*
-*   Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"),
-*   to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-*   and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-*   The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-*
-*   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-*   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-*   WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-#include <algorithm>
-#include <cstddef>
-
-#include "behaviortree_cpp_v3/controls/parallel_node.h"
-
-constexpr const char* BT::ParallelNode::THRESHOLD_FAILURE;
-constexpr const char* BT::ParallelNode::THRESHOLD_SUCCESS;
-
-Parallel_robot::Parallel_robot(const std::string& name, int success_threshold, int failure_threshold) :
-  BT::ControlNode(name, {}),
-  success_threshold_(success_threshold),
-  failure_threshold_(failure_threshold),
-  read_parameter_from_ports_(false){
-  setRegistrationID("Parallel_robot");
-}
-
-Parallel_robot::Parallel_robot(const std::string& name, const BT::NodeConfiguration& config) :
-  BT::ControlNode(name, config),
-  success_threshold_(1),
-  failure_threshold_(1),
-  read_parameter_from_ports_(true)
-{}
-
-BT::NodeStatus Parallel_robot::tick(){
-  if (read_parameter_from_ports_){
-    if (!getInput(THRESHOLD_SUCCESS, success_threshold_)){
-      throw BT::RuntimeError("Missing parameter [", THRESHOLD_SUCCESS, "] in ParallelNode");
-    }
-
-    if (!getInput(THRESHOLD_FAILURE, failure_threshold_)){
-      throw BT::RuntimeError("Missing parameter [", THRESHOLD_FAILURE, "] in ParallelNode");
-    }
-  }
-
-  size_t success_childred_num = 0;
-  size_t failure_childred_num = 0;
-
-  const size_t children_count = children_nodes_.size();
-
-  if (children_count < successThreshold()){
-    throw BT::LogicError("Number of children is less than threshold. Can never succeed.");
-  }
-
-  if (children_count < failureThreshold()){
-    throw BT::LogicError("Number of children is less than threshold. Can never fail.");
-  }
-
-  // Routing the tree according to the sequence node's logic:
-  for (unsigned int i = 0; i < children_count; i++){
-    TreeNode* child_node = children_nodes_[i];
-
-    bool in_skip_list = (skip_list_.count(i) != 0);
-
-    BT::NodeStatus child_status;
-    if (in_skip_list){
-      child_status = child_node->status();
-    }
-    else{
-      child_status = child_node->executeTick();
-    }
-
-    switch (child_status){
-      case BT::NodeStatus::SUCCESS: {
-        if (!in_skip_list){
-          skip_list_.insert(i);
-        }
-        success_childred_num++;
-
-        if (success_childred_num == successThreshold()){
-          skip_list_.clear();
-          BT::ControlNode::ControlNode::
-          resetChildren();
-          return BT::NodeStatus::SUCCESS;
-        }
-      }
-      break;
-
-      case BT::NodeStatus::FAILURE: {
-
-        // It fails if it is not possible to succeed anymore or if
-        // number of failures are equal to failure_threshold_
-        if ((failure_childred_num > children_count - successThreshold()) ||
-            (failure_childred_num == failureThreshold())){
-          skip_list_.clear();
-          resetChildren();
-          return BT::NodeStatus::FAILURE;
-        }
-      }
-      break;
-
-      case BT::NodeStatus::RUNNING: {
-        return BT::NodeStatus::RUNNING;
-      }
-      break;
-
-      default: {
-        throw BT::LogicError("A child node must never return IDLE");
-      }
-    }
-  }
-
-  return BT::NodeStatus::RUNNING;
-}
-
-void Parallel_robot::halt()
-{
-  skip_list_.clear();
-  ControlNode::halt();
-}
-
-size_t Parallel_robot::successThreshold() const
-{
-  return success_threshold_ < 0 ?
-             std::max(children_nodes_.size() + success_threshold_ + 1, size_t(0)) :
-             success_threshold_;
-}
-
-size_t Parallel_robot::failureThreshold() const{
-  return failure_threshold_ < 0 ?
-             std::max(children_nodes_.size() + failure_threshold_ + 1, size_t(0)) :
-             failure_threshold_;
-}
-
-void Parallel_robot::setSuccessThreshold(int threshold_M){
-  success_threshold_ = threshold_M;
-}
-
-void Parallel_robot::setFailureThreshold(int threshold_M){
-  failure_threshold_ = threshold_M;
-}
diff --git a/src/bt/planning_scene.cpp b/src/bt/planning_scene.cpp
deleted file mode 100644
index b67f11b6e29bfdd9fcfaeabcde512cde75063d5a..0000000000000000000000000000000000000000
--- a/src/bt/planning_scene.cpp
+++ /dev/null
@@ -1,19 +0,0 @@
-#include "bt/planning_scene.h"
-
-Planning_scene::Planning_scene(const std::string& name, const BT::NodeConfiguration& config)
-    : BT::AsyncActionNode(name, config) {}
-
-
-BT::NodeStatus Planning_scene::tick() {
-    try{
-        publisher_reference_->publish(planning_scene_);
-    } catch (ros::Exception& re) {
-        return BT::NodeStatus::FAILURE;
-    }
-    return BT::NodeStatus::SUCCESS;
-};
-
-void Planning_scene::init(ros::Publisher* publisher_reference, moveit_msgs::PlanningScene& planning_scene) {
-    publisher_reference_ = publisher_reference;
-    planning_scene_ = planning_scene;
-}
\ No newline at end of file
diff --git a/src/bt/position_condition.cpp b/src/bt/position_condition.cpp
deleted file mode 100644
index ec6467bd19aa2b98d458af90914eff893b084690..0000000000000000000000000000000000000000
--- a/src/bt/position_condition.cpp
+++ /dev/null
@@ -1,24 +0,0 @@
-#include "bt/position_condition.h"
-
-Position_condition::Position_condition(const std::string& name, const BT::NodeConfiguration& config)
-    : BT::ConditionNode(name, config){}
-
-void Position_condition::init(const std::string& obj_name, tf2::Vector3& start_pos, moveit::planning_interface::PlanningSceneInterface* psi){
-    obj_name_ = obj_name;
-    psi_ = psi;
-    start_pos_ = start_pos;
-}
-
-BT::NodeStatus Position_condition::tick(){
-    try {
-        auto ref_pose = psi_->getObjects().at(obj_name_);
-        if(tf2::tf2Distance2(start_pos_, tf2::Vector3(ref_pose.pose.position.x, ref_pose.pose.position.y, ref_pose.pose.position.z )) == 0){
-            return BT::NodeStatus::SUCCESS;
-        } else {
-            return BT::NodeStatus::FAILURE;
-        }
-    } catch(std::out_of_range& oor) {
-        ROS_INFO("Position to check not found");
-        return BT::NodeStatus::FAILURE;
-    }
-}
diff --git a/src/bt/trajetory.cpp b/src/bt/trajetory.cpp
deleted file mode 100644
index 6462090a103ec4ecd558d279201bca3dfdfaa370..0000000000000000000000000000000000000000
--- a/src/bt/trajetory.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "bt/trajetory.h"
-
-Trajetory::Trajetory(const std::string& name, const BT::NodeConfiguration& config)
-    : BT::AsyncActionNode(name, config){}
-
-BT::NodeStatus Trajetory::tick() {
-    if (mgi_reference_->execute(trajetory_)) return BT::NodeStatus::SUCCESS;
-    return BT::NodeStatus::FAILURE;
-};
-
-void Trajetory::init(moveit::planning_interface::MoveGroupInterface* mgi_reference, moveit_msgs::RobotTrajectory& trajetory){
-    mgi_reference_ = mgi_reference;
-    trajetory_ = trajetory;
-}
\ No newline at end of file
diff --git a/src/cell_routine.cpp b/src/cell_routine.cpp
index ea4be5c4476160dfb556129061137e95b1c61776..f11c39abc72274c22da9d246826cb051025616f9 100644
--- a/src/cell_routine.cpp
+++ b/src/cell_routine.cpp
@@ -42,35 +42,38 @@ int main(int argc, char **argv){
     Abstract_mediator* mediator = new Moveit_mediator(map_loader->task_grasps(), pub, nh);
     Moveit_mediator* moveit_mediator = dynamic_cast<Moveit_mediator*>(mediator);
 
-    std::unique_ptr<Abstract_param_reader> robot_reader(new Robot_reader(nh));
-    auto rd = static_cast<Robot_reader*>(robot_reader.get())->robot_data();
+    std::unique_ptr<Robot_reader> robot_reader = std::make_unique<Robot_reader>(nh);
+    auto rd = robot_reader->robot_data();
     for (int i = 0; i < rd.size() ;i++) mediator->connect_robots(new Moveit_robot(rd[i].name_, rd[i].pose_, rd[i].size_));
 
-    std::unique_ptr<Abstract_param_reader> wing_reader(new Wing_reader(nh));
+    std::unique_ptr<Wing_reader> wing_reader(new Wing_reader(nh));
     auto wd = static_cast<Wing_reader*>(wing_reader.get())->wing_data();
 
-    std::unique_ptr<Abstract_param_reader> cuboid_reader(new Cuboid_reader(nh));
-    auto cbd = static_cast<Cuboid_reader*>(cuboid_reader.get())->cuboid_bin();
-    auto cod = static_cast<Cuboid_reader*>(cuboid_reader.get())->cuboid_obstacle();
-
+    std::unique_ptr<Cuboid_reader> cuboid_reader = std::make_unique<Cuboid_reader>(nh);
+    auto cbd = cuboid_reader->cuboid_bin();
+    auto cod = cuboid_reader->cuboid_obstacle();
 
+    /*
     for (int i = 0; i < mediator->robots().size(); i++){
         for(object_data& w : wd[i].first){
             w.pose_ = mediator->robots()[i]->tf().inverse() * w.pose_;
         }
         mediator->robots()[i]->set_observer_mask(static_cast<wing_config>(wd[i].second));
     }
+    moveit_mediator->set_wings(wd);
+    */
 
 
-    moveit_mediator->set_wings(wd);
     Moveit_robot* ceti1 = dynamic_cast<Moveit_robot*>(mediator->robots()[0]);
     Moveit_robot* ceti2 = dynamic_cast<Moveit_robot*>(mediator->robots()[1]);
     
 
+    /*
     for (int i = 0; i < mediator->robots().size(); i++){
         std::bitset<3> bs = wd[i].second;
         moveit_mediator->build_wings(bs, i);
     }
+    */
 
 
     //moveit::planning_interface::PlanningSceneInterface::applyCollisionObject()
diff --git a/src/impl/base_by_rotation.cpp b/src/impl/base_by_rotation.cpp
index df8d314214db66442b4aab6240d672a5867b410e..2552cd2c9399cce9ed0d138ad16f9c2c20a038f6 100644
--- a/src/impl/base_by_rotation.cpp
+++ b/src/impl/base_by_rotation.cpp
@@ -2,7 +2,7 @@
 
 
 void Base_by_rotation::inv_map_creation(Abstract_map_loader* var) {
-    ROS_INFO("starting base calculation strategy...");
+    ROS_INFO("starting base calculation implementation...");
     ROS_INFO("condition based [inv_map] calculation...");
     std::vector<tf2::Transform> trans;
     for(long unsigned int i = 0; i < var->map().size(); i++) {
diff --git a/src/impl/map_loader.cpp b/src/impl/map_loader.cpp
index d07bae27701ef2783d051a817da99042bb53f574..cee96cf4866685e6702fcf6d2236e785131aa81d 100644
--- a/src/impl/map_loader.cpp
+++ b/src/impl/map_loader.cpp
@@ -87,7 +87,6 @@ std::vector<std::vector<pcl::PointXYZ>> Map_loader::base_calculation(){
                     std::vector< int > pointIdxVec;
                     if(octree.voxelSearch(p, pointIdxVec)) if(!pointIdxVec.empty()) base_target_map[i][k].push_back(j);
                 }
-
             }
         }
     }
diff --git a/src/impl/mediator.cpp b/src/impl/mediator.cpp
index 2a52f367398aec5a58c2c45882ab4ef263a7992a..d6751a5c3217aab780e91ff637519fcabf38a761 100644
--- a/src/impl/mediator.cpp
+++ b/src/impl/mediator.cpp
@@ -281,6 +281,7 @@ void Mediator::approximation(Robot* robot){
                 if (robot->check_robot_collision(ceti1)) continue;
 
                 if (check_collision(r1)) {
+                    ROS_INFO("penis");
                     write_file(robot, ceti1);
                 } else {
                     continue;
diff --git a/src/impl/moveit_grasp_mediator.cpp b/src/impl/moveit_grasp_mediator.cpp
index c5decb4b21bf88cbf9b8274eae8978b8d7833b9c..d2d760a865cb692f50044b7b6ed031101e60880a 100644
--- a/src/impl/moveit_grasp_mediator.cpp
+++ b/src/impl/moveit_grasp_mediator.cpp
@@ -504,8 +504,8 @@ void Moveit_grasp_mediator::scene_setup(){
 	  auto cbd = static_cast<Cuboid_reader*>(cuboid_reader_.get())->cuboid_bin();
     auto cod = static_cast<Cuboid_reader*>(cuboid_reader_.get())->cuboid_obstacle();
 
-	  ROS_INFO("%i die cuboids", cbd.size());
-	  ROS_INFO("%i cuboids", cod.size());
+	  ROS_INFO("%li die cuboids", cbd.size());
+	  ROS_INFO("%li cuboids", cod.size());
 
     for(auto&o:cod){
       o.publishCOwait(visual_tools_,planning_scene_monitor_,rviz_visual_tools::GREY);
@@ -553,7 +553,7 @@ Moveit_grasp_mediator::Moveit_grasp_mediator(std::vector<std::vector<tf2::Transf
 
         auto rd = robot_reader_->robot_data();
         for (int i = 0; i < rd.size() ;i++) connect_robots(new Moveit_robot(rd[i].name_, rd[i].pose_, rd[i].size_));
-
+        /*
         auto wd = static_cast<Wing_reader*>(wing_reader_.get())->wing_data();
         for (int i = 0; i < robots_.size(); i++){
             for(object_data& w : wd[i].first){
@@ -568,6 +568,7 @@ Moveit_grasp_mediator::Moveit_grasp_mediator(std::vector<std::vector<tf2::Transf
             std::bitset<3> bs = wd[i].second;
             build_wings(bs, i);
         }
+        */
 
         for (auto* r : robots_)r->notify();
 
diff --git a/src/impl/moveit_mediator.cpp b/src/impl/moveit_mediator.cpp
index 613251e5ef655fb62b644c7e5b35a368bb5afec3..136c3ca39dbc12015e7940a18b2c7ae7dd8ae88f 100644
--- a/src/impl/moveit_mediator.cpp
+++ b/src/impl/moveit_mediator.cpp
@@ -5,20 +5,6 @@
 #include <gb_grasp/MapGenerator.h>
 #include <regex>
 
-#include "behaviortree_cpp_v3/behavior_tree.h"
-#include "behaviortree_cpp_v3/tree_node.h"
-#include "behaviortree_cpp_v3/bt_factory.h"
-#include "behaviortree_cpp_v3/loggers/bt_zmq_publisher.h"
-#include "bt/planning_scene.h"
-#include "bt/trajetory.h"
-#include "bt/execution.h"
-#include "bt/position_condition.h"
-#include "bt/parallel_robot.h"
-#include <actionlib_msgs/GoalStatusArray.h>
-
-
-
-
 thread_local moveit::task_constructor::Task task__;
 thread_local moveit_task_constructor_msgs::ExecuteTaskSolutionGoal etsg_;
 
@@ -555,140 +541,155 @@ void Moveit_mediator::setup_task(){
 	}
 	*/
 
-}
-
-void Moveit_mediator::manipulate_acm(Moveit_robot* mr, moveit_msgs::PlanningScene& ps){
-	// First find ID from panda to start with
-	std::regex rx_panda("panda_arm([0-9]+)");
-	std::smatch match;
-	std::regex_match(mr->name(), match, rx_panda);
-
-	// build panda link regex
-	std::stringstream ss;
-	ss << "panda_" << match[1] << "_.*";
-	std::regex rx_panda_links(ss.str());
-	std::regex rx_box("box.*");
-	std::regex rx_table("table.*");
-
-	// Iterate task collsion matrix
-	for(int j = 0; j < ps.allowed_collision_matrix.entry_names.size(); j++ ){
-		if( mr->map().at("base") == ps.allowed_collision_matrix.entry_names[j]){
-			//In case an entry matches an robot spezific link
-			ROS_INFO("entry matches link %s at index %i", mr->map().at("base").c_str(), j);
-
-			for(int k = 0; k < ps.allowed_collision_matrix.entry_values[j].enabled.size(); k++){
-				// For that specific entry, loop over values								
-				int distance = std::distance(acm_.begin(),acm_.find(ps.allowed_collision_matrix.entry_names[k]));								
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
-					ROS_INFO("Entry in row corresponds to link_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_box)){
-					ROS_INFO("Entry in row corresponds to box_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}				
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_table)){
-					ROS_INFO("Entry in row corresponds to table_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}	
 
-				if (mr->map().at("base")== ps.allowed_collision_matrix.entry_names[k]){
-					ROS_INFO("Entry in row corresponds to base %s", mr->map().at("base").c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
+	std::regex item("box_([0-9]+)");
+    std::smatch match;
+	ROS_INFO("tasks %li", tasks_.size());
+
+	while(!tasks_.empty()){
+		ROS_INFO("in tasks");
+		std::vector<std::pair<std::string, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>> q_ets;
+		for (auto*r:robots_){
+			ROS_INFO("robot iteration");
+			auto itlow = tasks_.lower_bound (r->name());  // itlow points to b
+  			auto itup = tasks_.upper_bound (r->name());  
+			for (auto it=itlow; it!=itup; ++it){
+				tf2::Vector3 b_start_position = (*it).second.first;
+				for(auto& s_co : psi_->getObjects()){
+					if(!std::regex_match(s_co.first, match, item)) continue;
+					if(tf2::tf2Distance2(b_start_position, tf2::Vector3(s_co.second.pose.position.x, s_co.second.pose.position.y,s_co.second.pose.position.z)) == 0) {
+						q_ets.push_back(std::pair<std::string, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>(r->name(), (*it).second.second));
+						tasks_.erase(it);
+						break;
+					}
 				}
 			}
 		}
 
-		if(std::regex_match(ps.allowed_collision_matrix.entry_names[j], match, rx_panda_links)){
-			//In case an entry matches an robot spezific link
-			ROS_INFO("entry matches link %s at index %i", ps.allowed_collision_matrix.entry_names[j].c_str(), j);
-			for(int k = 0; k < ps.allowed_collision_matrix.entry_values[j].enabled.size(); k++){
-					//For that specific entry, loop over values							
-				int distance = std::distance(acm_.begin(),acm_.find(ps.allowed_collision_matrix.entry_names[k]));								
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
-					ROS_INFO("Entry in row corresponds to link_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
+		ROS_INFO("tasks %li", tasks_.size());
+		ROS_INFO("jobs %li", q_ets.size());
 
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_box)){
-					ROS_INFO("Entry in row corresponds to box_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}				
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_table)){
-					ROS_INFO("Entry in row corresponds to table_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}	
+		// now execution should be possible, but with bocking
+		std::vector<std::thread> th;
 
-				if (mr->map().at("base")== ps.allowed_collision_matrix.entry_names[k]){
-					ROS_INFO("Entry in row corresponds to base %s", mr->map().at("base").c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
+		while(!q_ets.empty()){
+			moveit_msgs::PlanningScene ps_m;
+			ps_m.is_diff = 0;
+			for (auto*r:robots_){
+				for (auto& s_qets : q_ets){
+					if(s_qets.first == r->name()){
+						if(!s_qets.second.front().solution.sub_trajectory.empty()){
+							moveit_msgs::RobotTrajectory* rt = (!s_qets.second.front().solution.sub_trajectory.empty()) ? &s_qets.second.front().solution.sub_trajectory.front().trajectory : nullptr;
+							moveit_msgs::PlanningScene* ps = (!s_qets.second.front().solution.sub_trajectory.empty()) ? &s_qets.second.front().solution.sub_trajectory.front().scene_diff : nullptr;
+
+							if (rt){
+								Moveit_robot* mr = dynamic_cast<Moveit_robot*>(r);
+								// mr->mgi()->execute(*rt);
+								th.push_back(std::thread(&Moveit_mediator::parallel_exec, this, std::ref(*mr), *rt, *ps));
+							
+								// First find ID from panda to start with
+								std::regex rx_panda("panda_arm([0-9]+)");
+								std::smatch match;
+								std::regex_match(mr->name(), match, rx_panda);
+
+								// build panda link regex
+								std::stringstream ss;
+								ss << "panda_" << match[1] << "_.*";
+								std::regex rx_panda_links(ss.str());
+								std::regex rx_box("box.*");
+								std::regex rx_table("table.*");
+
+								if(ps){
+									for(int j = 0; j < ps->allowed_collision_matrix.entry_names.size(); j++ ){
+										if( mr->map().at("base") == ps->allowed_collision_matrix.entry_names[j]){
+											for(int k = 0; k < ps->allowed_collision_matrix.entry_values[j].enabled.size(); k++){
+												int distance = std::distance(acm_.begin(),acm_.find(ps->allowed_collision_matrix.entry_names[k]));								
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_box)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}				
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_table)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}	
+												if (mr->map().at("base")== ps->allowed_collision_matrix.entry_names[k]){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+											}
+										}
+
+										if(std::regex_match(ps->allowed_collision_matrix.entry_names[j], match, rx_panda_links)){
+											for(int k = 0; k < ps->allowed_collision_matrix.entry_values[j].enabled.size(); k++){
+												int distance = std::distance(acm_.begin(),acm_.find(ps->allowed_collision_matrix.entry_names[k]));								
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_box)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}				
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_table)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}	
+												if (mr->map().at("base")== ps->allowed_collision_matrix.entry_names[k]){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+											}
+										}
+
+										if(std::regex_match(ps->allowed_collision_matrix.entry_names[j], match, rx_box)){
+											for(int k = 0; k < ps->allowed_collision_matrix.entry_values[j].enabled.size(); k++){
+												int distance = std::distance(acm_.begin(),acm_.find(ps->allowed_collision_matrix.entry_names[k]));								
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_box)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}				
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_table)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}	
+												if (mr->map().at("base")== ps->allowed_collision_matrix.entry_names[k]){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+											}
+										}
+
+										if(std::regex_match(ps->allowed_collision_matrix.entry_names[j], match, rx_table)){
+											for(int k = 0; k < ps->allowed_collision_matrix.entry_values[j].enabled.size(); k++){
+												int distance = std::distance(acm_.begin(),acm_.find(ps->allowed_collision_matrix.entry_names[k]));								
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_box)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}				
+												if (std::regex_match(ps->allowed_collision_matrix.entry_names[k], match, rx_table)){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}	
+												if (mr->map().at("base")== ps->allowed_collision_matrix.entry_names[k]){
+													acm_.at(ps->allowed_collision_matrix.entry_names[k])[distance] = ps->allowed_collision_matrix.entry_values[j].enabled[k];
+												}
+											}
+										}
+									}
+									merge_ps(ps_m, ps, mr);
+								}
+								s_qets.second.front().solution.sub_trajectory.erase(s_qets.second.front().solution.sub_trajectory.begin());
+							}
+						} else {s_qets.second.pop();};	
+					}
 				}
 			}
-		}
-
-		if(std::regex_match(ps.allowed_collision_matrix.entry_names[j], match, rx_box)){
-				//In case an entry matches an robot spezific link
-			ROS_INFO("entry matches link %s at index %i", ps.allowed_collision_matrix.entry_names[j].c_str(), j);
-			for(int k = 0; k < ps.allowed_collision_matrix.entry_values[j].enabled.size(); k++){
-				//For that specific entry, loop over values							
-				int distance = std::distance(acm_.begin(),acm_.find(ps.allowed_collision_matrix.entry_names[k]));								
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
-					ROS_INFO("Entry in row corresponds to link_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_box)){
-					ROS_INFO("Entry in row corresponds to box_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}				
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_table)){
-					ROS_INFO("Entry in row corresponds to table_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}	
-
-				if (mr->map().at("base")== ps.allowed_collision_matrix.entry_names[k]){
-					ROS_INFO("Entry in row corresponds to base %s", mr->map().at("base").c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
+			for(int i = 0; i < th.size(); i++){
+				if(th[i].joinable()) th[i].join();
 			}
+			merge_acm(ps_m);
+			if(ps_m.is_diff) planning_scene_diff_publisher_->publish(ps_m);
 		}
 
-		if(std::regex_match(ps.allowed_collision_matrix.entry_names[j], match, rx_table)){
-			//In case an entry matches an robot spezific link
-			ROS_INFO("entry matches link %s at index %i", ps.allowed_collision_matrix.entry_names[j], j);
-			for(int k = 0; k < ps.allowed_collision_matrix.entry_values[j].enabled.size(); k++){
-				//For that specific entry, loop over values									
-				int distance = std::distance(acm_.begin(),acm_.find(ps.allowed_collision_matrix.entry_names[k]));								
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_panda_links)){
-					ROS_INFO("Entry in row corresponds to link_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_box)){
-					ROS_INFO("Entry in row corresponds to box_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}				
-
-				if (std::regex_match(ps.allowed_collision_matrix.entry_names[k], match, rx_table)){
-					ROS_INFO("Entry in row corresponds to table_pattern %s", match[0].str().c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}	
-
-				if (mr->map().at("base")== ps.allowed_collision_matrix.entry_names[k]){
-					ROS_INFO("Entry in row corresponds to base %s", mr->map().at("base").c_str());
-					acm_.at(ps.allowed_collision_matrix.entry_names[k])[distance] = ps.allowed_collision_matrix.entry_values[j].enabled[k];
-				}
-			}
-		}
 	}
+
 }
 
 
@@ -732,36 +733,20 @@ void Moveit_mediator::task_planner(){
 
 		// Could also safe id's somewhere
 	}
-	
-	// Setup shared ACM
-	for(auto& a: acm_) a.second.resize(acm_.size(), 0);
 
 	std::regex item("box_([0-9]+)");
     std::smatch match;
 
-	// ----------------------------------
-	// GROOT Strategie => erst FROM TEXT
-	// ----------------------------------
-
-	BT::BehaviorTreeFactory factory;
-	factory.registerNodeType<Planning_scene>("PS");
-	factory.registerNodeType<Trajetory>("Trajetory");
-	factory.registerNodeType<Execution>("Execution");
-	factory.registerNodeType<Position_condition>("Position_condition");
-	factory.registerNodeType<Parallel_robot>("Parallel_robot");
-
-	std::map<const std::string, std::vector<std::tuple<const std::string, tf2::Vector3, std::vector<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>>> task_but_different;
-
+	// circular buffer is job-q
 	while(!jq.empty()){
 		for(auto& s_co : psi_->getObjects()){
 			if(!std::regex_match(s_co.first, match, item)) continue;
-			
 			std::pair<std::string, job_data> temp = jq.front();
 			ROS_INFO("1. job entry %f %f %f", temp.second.jobs_.front().getOrigin().getX(), temp.second.jobs_.front().getOrigin().getY(), temp.second.jobs_.front().getOrigin().getZ());
 			ROS_INFO("object position %f %f %f", s_co.second.pose.position.x, s_co.second.pose.position.y, s_co.second.pose.position.z);
 			if(tf2::tf2Distance2(temp.second.jobs_.front().getOrigin(), tf2::Vector3(s_co.second.pose.position.x, s_co.second.pose.position.y, s_co.second.pose.position.z )) == 0) {
-				std::vector<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal> bt_list;
-				
+				std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal> tasks_per_robot;
+				// get rob by name
 				Moveit_robot* mr;
 				for(auto* r: robots_) if (r->name() == temp.first) mr = dynamic_cast<Moveit_robot*>(r);
 
@@ -771,7 +756,7 @@ void Moveit_mediator::task_planner(){
 					if(mgt.plan(1)) {
 						moveit_task_constructor_msgs::ExecuteTaskSolutionGoal e;
 						mgt.solutions().front()->fillMessage(e.solution, &mgt.introspection());
-						bt_list.push_back(e);
+						tasks_per_robot.push(e);
 
 						moveit_msgs::CollisionObject temp_co = psi_->getObjects().at(s_co.first);
 						temp_co.operation = temp_co.MOVE;
@@ -785,134 +770,13 @@ void Moveit_mediator::task_planner(){
 						psi_->applyCollisionObject(temp_co);
 					}
 				}
-
-				/*
-				if(auto condition = dynamic_cast<Position_condition*>(node_it->get())) {ROS_INFO("om");condition->init(s_co.first, temp.second.jobs_.front().getOrigin(), psi_.get()); ++node_it;}
-
-				for(auto& ets : bt_list)
-					if(auto execution = dynamic_cast<Execution*>(node_it->get())) {ROS_INFO("tr");execution->init(planning_scene_diff_publisher_.get(), mr->mgi().get(), ets); ++node_it;}
-				*/
-
-				for (int i = 0; i < cd.size(); i ++){
-					std::stringstream ss;
-					ss << "box_" << i;
-
-					moveit_msgs::CollisionObject item;
-					item.id = ss.str();
-					item.header.frame_id = "world";
-					item.header.stamp = ros::Time::now();
-					item.primitives.resize(1);
-					item.primitives[0].type = item.primitives[0].BOX;
-					item.primitives[0].dimensions.resize(3);
-					item.primitives[0].dimensions[0] = cd[i].x_depth;
-					item.primitives[0].dimensions[1] = cd[i].y_width;
-					item.primitives[0].dimensions[2] = cd[i].z_heigth;
-
-					item.pose.position.x = cd[i].Pose.position.x;
-					item.pose.position.y = cd[i].Pose.position.y;
-					item.pose.position.z = cd[i].Pose.position.z;
-					item.pose.orientation.x = cd[i].Pose.orientation.x;
-					item.pose.orientation.y = cd[i].Pose.orientation.y;
-					item.pose.orientation.z = cd[i].Pose.orientation.z;
-					item.pose.orientation.w = cd[i].Pose.orientation.w;
-					item.operation = item.MOVE;
-
-					psi_->applyCollisionObject(item);
-					// Could also safe id's somewhere
-				}
-
-				
-				try{
-					task_but_different.at(mr->name()).push_back(std::tuple<std::string, tf2::Vector3, std::vector<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>(s_co.first, temp.second.jobs_.front().getOrigin(), bt_list));
-				} catch(std::out_of_range &oor) {
-					std::tuple<const std::string&, tf2::Vector3&, std::vector<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>&> tuple(s_co.first, temp.second.jobs_.front().getOrigin(), bt_list);
-					task_but_different.insert(std::pair<std::string, std::vector<std::tuple<const std::string, tf2::Vector3, std::vector<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>>>(mr->name(),{tuple}));
-				}
+				std::pair<tf2::Vector3, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>> pair(temp.second.jobs_.front().getOrigin(), tasks_per_robot);
+				tasks_.insert(std::pair<std::string, std::pair<tf2::Vector3, std::queue<moveit_task_constructor_msgs::ExecuteTaskSolutionGoal>>>(mr->name(), pair));
 				jq.pop_front();
 			} else {jq.push_back(temp);}
 		}
 	}
 
-	std::stringstream ss;
-	ss << "<root main_tree_to_execute = \"MainTree\">\n";
-	ss << "<BehaviorTree ID=\"MainTree\">\n";
-	ss << "<Control ID=\"Parallel\" name=\"Agents\" success_threshold=\""<< robots_.size() << "\" failure_threshold=\""<< robots_.size() << "\">\n";
-
-	for(int i =0; i < robots_.size();i++){
-		try{
-			ss << "<Control ID=\"Parallel_robot\" name=\""<< robots_[i]->name() << "\" success_threshold=\""<< task_but_different.at(robots_[i]->name()).size() << "\" failure_threshold=\""<< task_but_different.at(robots_[i]->name()).size() << "\">\n";
-			for (auto& p_obj: task_but_different.at(robots_[i]->name())){
-				ss << "<SequenceStar name=\"root_sequence\">\n";
-				ss << "<Condition ID=\"Position_condition\" name=\"Position_condition\"/>\n";
-				for(int j = 0; j < std::get<2>(p_obj).size(); j++){
-					ss << "<Action ID=\"Execution\" name=\"Execution\"/>\n";
-				}
-				ss << "</SequenceStar>\n";
-			}
-			ss << "</Control>\n";
-		} catch(std::out_of_range& oor){}
-	}
-	ss << "</Control>\n";
-	ss << "</BehaviorTree>\n";
-	ss << "</root>\n";
-
-	std::cout << ss.str();
-	auto tree = factory.createTreeFromText(ss.str());
-	auto node_it = tree.nodes.begin();
-
-	
-
-	for(int i =0; i < robots_.size();i++){
-		try{
-			for (auto& p_obj: task_but_different.at(robots_[i]->name())){
-				while (node_it->get()->type() == BT::NodeType::CONTROL) ++node_it;
-				if(node_it->get()->type() == BT::NodeType::ACTION) ROS_INFO("Action");
-				if(node_it->get()->type() == BT::NodeType::CONDITION) ROS_INFO("Condition");
-				if(node_it->get()->type() == BT::NodeType::CONTROL) ROS_INFO("Control");
-				if(node_it->get()->type() == BT::NodeType::DECORATOR) ROS_INFO("Decorator");
-
-				if(auto condition = dynamic_cast<Position_condition*>(node_it->get())) {ROS_INFO("init Condition");condition->init(std::get<0>(p_obj), std::get<1>(p_obj), psi_.get());++node_it;}
-				for(int j = 0; j < std::get<2>(p_obj).size(); j++){
-					auto mr = dynamic_cast<Moveit_robot*>(robots_[i]);
-					if(auto execution = dynamic_cast<Execution*>(node_it->get())) {ROS_INFO("init Action");execution->init(&executions_, planning_scene_diff_publisher_.get(), mr, std::get<2>(p_obj)[j]);++node_it;}
-				}
-				ss << "</SequenceStar>\n";
-			}
-			ss << "</Control>\n";
-		} catch(std::out_of_range& oor){}
-	}
-
-
-	BT::PublisherZMQ zmq(tree);
-	ros::Duration sleep(1);
-	BT::NodeStatus status = BT::NodeStatus::RUNNING;
-	while( status == BT::NodeStatus::RUNNING){
-		status = tree.tickRoot();
-
-		std::vector<std::thread> th;
-		moveit_msgs::PlanningScene ps_m;
-		
-		for(auto& exec : executions_){
-			for (int i = 0; i < robots_.size(); i++){
-				if (exec.first == robots_[i]->name()){
-					auto mr = dynamic_cast<Moveit_robot*>(robots_[i]);
-					th.push_back(std::thread(&Moveit_mediator::parallel_exec, this, std::ref(*mr), exec.second.first));
-					//mr->mgi()->execute(exec.second.first);
-					manipulate_acm(mr, exec.second.second);
-					merge_ps(ps_m, exec.second.second, mr);
-				}
-			}
-		}
-		
-		
-		for(auto& t : th){
-			if(t.joinable()) t.join();
-			merge_acm(ps_m);
-			planning_scene_diff_publisher_->publish(ps_m);
-		}
-	}
-
-
 	// clean up
 	for (int i = 0; i < cd.size(); i ++){
 		std::stringstream ss;
@@ -957,15 +821,11 @@ void Moveit_mediator::merge_acm(moveit_msgs::PlanningScene& ps_m){
 	}
 
 	ps_m.allowed_collision_matrix = acmt;
-}
+	ROS_INFO("broken after merge");
 
-void Moveit_mediator::status_callback(const actionlib_msgs::GoalStatusArray::ConstPtr& status){
- if (!status->status_list.empty()){
-	ROS_INFO("%i", status->status_list.size());
-   }
 }
 
-void Moveit_mediator::merge_ps(moveit_msgs::PlanningScene& out, moveit_msgs::PlanningScene in, Moveit_robot* mr){
+void Moveit_mediator::merge_ps(moveit_msgs::PlanningScene& out, moveit_msgs::PlanningScene* in, Moveit_robot* mr){
 	// get full mr link list 
 	std::vector<std::string> links;
 	for (auto link : mr->mgi()->getLinkNames())links.push_back(link);
@@ -975,47 +835,45 @@ void Moveit_mediator::merge_ps(moveit_msgs::PlanningScene& out, moveit_msgs::Pla
 	links.push_back(mr->map()["base"]);
 
 
-	for (auto ao : in.robot_state.attached_collision_objects) out.robot_state.attached_collision_objects.push_back(ao);
-	if (in.robot_state.is_diff) out.robot_state.is_diff = in.robot_state.is_diff;
-	if (in.is_diff) out.is_diff = in.is_diff;
-	out.robot_state.joint_state.header = in.robot_state.joint_state.header;
+	for (auto ao : in->robot_state.attached_collision_objects) out.robot_state.attached_collision_objects.push_back(ao);
+	if (in->robot_state.is_diff) out.robot_state.is_diff = in->robot_state.is_diff;
+	if (in->is_diff) out.is_diff = in->is_diff;
+	out.robot_state.joint_state.header = in->robot_state.joint_state.header;
 	out.robot_model_name = "panda";
 
 
 
 	for (auto link : links) {
-		for(int i = 0; i < in.robot_state.joint_state.name.size(); i++){
-			if(link.c_str() == in.robot_state.joint_state.name[i].c_str()){
-				out.robot_state.joint_state.effort.push_back(in.robot_state.joint_state.effort[i]);
-				out.robot_state.joint_state.position.push_back(in.robot_state.joint_state.position[i]);
-				out.robot_state.joint_state.velocity.push_back(in.robot_state.joint_state.velocity[i]);
+		for(int i = 0; i < in->robot_state.joint_state.name.size(); i++){
+			if(link.c_str() == in->robot_state.joint_state.name[i].c_str()){
+				out.robot_state.joint_state.effort.push_back(in->robot_state.joint_state.effort[i]);
+				out.robot_state.joint_state.position.push_back(in->robot_state.joint_state.position[i]);
+				out.robot_state.joint_state.velocity.push_back(in->robot_state.joint_state.velocity[i]);
 				ROS_INFO("check");
 			}
 		}
 
-		for(int i = 0; i < in.link_padding.size(); i++){
-			if(link.c_str() == in.link_padding[i].link_name.c_str()){
-				out.link_padding.push_back(in.link_padding[i]);
+		for(int i = 0; i < in->link_padding.size(); i++){
+			if(link.c_str() == in->link_padding[i].link_name.c_str()){
+				out.link_padding.push_back(in->link_padding[i]);
 			}
 		}
 
-		for(int i = 0; i < in.link_scale.size(); i++){
-			if(link.c_str() == in.link_scale[i].link_name.c_str()){
-				out.link_scale.push_back(in.link_scale[i]);
+		for(int i = 0; i < in->link_scale.size(); i++){
+			if(link.c_str() == in->link_scale[i].link_name.c_str()){
+				out.link_scale.push_back(in->link_scale[i]);
 			}
 		}
 	}
 	
 }
-
-
-void Moveit_mediator::parallel_exec(Moveit_robot& mr, moveit_msgs::RobotTrajectory rt){
+	
+void Moveit_mediator::parallel_exec(Moveit_robot& mr, moveit_msgs::RobotTrajectory rt, moveit_msgs::PlanningScene ps){
 	mr.mgi()->execute(rt);
 }
 
 
 
-
 moveit::task_constructor::Task Moveit_mediator::create_Task(Moveit_robot* mr, moveit_msgs::CollisionObject& source, tf2::Transform& target){
     tf2::Transform t(tf2::Quaternion(source.pose.orientation.x, source.pose.orientation.y, source.pose.orientation.z, source.pose.orientation.w), tf2::Vector3(source.pose.position.x, source.pose.position.y, source.pose.position.z));
 	std::string support_surface1 = "nichts";
@@ -1285,14 +1143,6 @@ moveit::task_constructor::Task Moveit_mediator::create_Task(Moveit_robot* mr, mo
 			place->insert(std::move(stage));
 		}
 
-		{
-			auto stage = std::make_unique<moveit::task_constructor::stages::MoveTo>("close hand", sampling_planner_);
-			stage->setGroup(mr->map()["eef_name"]);
-			stage->setGoal("close");
-			place->insert(std::move(stage));
-		}
-
-
 		// Add place container to task
 		task_.add(std::move(place));
 	}
@@ -1309,6 +1159,106 @@ moveit::task_constructor::Task Moveit_mediator::create_Task(Moveit_robot* mr, mo
 }
 
 
+void Moveit_mediator::rewrite_task_template(Abstract_robot* r, moveit_msgs::CollisionObject& source, tf2::Transform& target){
+    tf2::Transform t(tf2::Quaternion(source.pose.orientation.x, source.pose.orientation.y, source.pose.orientation.z, source.pose.orientation.w), tf2::Vector3(source.pose.position.x, source.pose.position.y, source.pose.position.z));
+    // unique ids cartesian, samplimg, interpolation, ready, hand_open, pick_up
+
+    std::string support_surface1 = "nichts";
+    std::string support_surface2 = "nichts";
+
+	XmlRpc::XmlRpcValue task;
+    nh_->getParam("task/stages", task);
+
+
+
+    for (Abstract_robot* ar : robots_){
+        std::string str;
+        if(ar->check_single_object_collision(t, str)) support_surface1 = str;
+        if(ar->check_single_object_collision(target, str)) support_surface2= str;
+    }
+
+	Moveit_robot* mr = dynamic_cast<Moveit_robot*>(r);
+    
+    ROS_INFO("%f %f %f source", t.getOrigin().getX(), t.getOrigin().getY(), t.getOrigin().getZ());
+
+    ROS_INFO("surface1 %s", support_surface1.c_str());
+    ROS_INFO("surface2 %s", support_surface2.c_str());
+
+
+    nh_->setParam("/task/properties/group", r->name());
+    nh_->setParam("/task/properties/eef", mr->map()["eef"]);
+    nh_->setParam("/task/properties/hand_grasping_frame", mr->map()["hand_grasping_frame"]);
+    nh_->setParam("/task/properties/ik_frame", mr->map()["ik_frame"]);
+    nh_->setParam("/task/properties/hand", mr->map()["hand"]);
+
+    XmlRpc::XmlRpcValue a, b, c, d, e, h;
+    a["group"] = mr->map()["hand"];
+    e["joint_model_group_name"] = mr->map()["hand"];
+
+    b = task[4]["stages"];
+    b[1]["stage"]["properties"]["object"] = source.id;
+    b[3]["properties"] = a;
+    b[2]["set"]["allow_collisions"]["first"] = source.id;
+    b[2]["set"]["allow_collisions"]["second"] = e;
+
+    c = task[6]["stages"];
+
+    c[0]["set"]["allow_collisions"]["first"] = source.id;
+    c[0]["set"]["allow_collisions"]["second"] = support_surface2;
+    c[3]["properties"] = a;
+    c[6]["properties"] = a;
+    c[4]["set"]["allow_collisions"]["first"] = source.id;
+    c[4]["set"]["allow_collisions"]["second"] = e;
+
+    c[2]["stage"]["set"]["pose"]["point"]["x"]= static_cast<double>(target.getOrigin().getX());
+    c[2]["stage"]["set"]["pose"]["point"]["y"]= static_cast<double>(target.getOrigin().getY());
+    c[2]["stage"]["set"]["pose"]["point"]["z"]= static_cast<double>(target.getOrigin().getZ());
+
+
+    task[2]["properties"] = a;
+
+    XmlRpc::XmlRpcValue connect, f, g;
+    f[r->name()] = "sampling";
+    g["source"] = "PARENT";
+    connect["type"] = "Connect";
+    connect["group_planner_vector"] = f;
+    connect["propertiesConfigureInitFrom"] = g;
+    task[5] = connect;
+    task[3] = connect;
+
+    a.clear();
+    e.clear();
+    a["link"] = mr->map()["ik_frame"];
+    a["min_distance"] = 0.07;
+    a["max_distance"] = 0.2;
+    c[5]["properties"] = a;
+    b[0]["properties"] = a;
+    a["min_distance"] = 0.1;
+    a["max_distance"] = 0.2;
+    c[1]["properties"] = a;
+
+    e["object"] = "bottle";
+    e["link"] = mr->map()["ik_frame"];
+    b[4]["set"]["attach_object"] = e;
+    c[4]["set"]["detach_object"] = e;
+    c[2]["set"]["ik_frame"]["link"] = mr->map()["ik_frame"];
+    c[5]["set"]["direction"]["vector"]["header"]["frame_id"]  = mr->map()["ik_frame"];
+    b[1]["set"]["ik_frame"]["link"] = mr->map()["ik_frame"];
+    b[6]["set"]["ik_frame"]["link"] = mr->map()["ik_frame"];
+    b[0]["set"]["direction"]["vector"]["header"]["frame_id"] = mr->map()["ik_frame"];
+
+    b[5]["set"]["allow_collisions"]["first"] = source.id;
+    b[5]["set"]["allow_collisions"]["second"] = support_surface1;
+    b[7]["set"]["allow_collisions"]["first"] = source.id;
+    b[7]["set"]["allow_collisions"]["second"] = support_surface1;
+
+    task[6]["stages"] = c;
+    task[4]["stages"] = b;
+
+    nh_->setParam("task/stages", task);
+
+}
+
 Moveit_mediator::Moveit_mediator(std::vector<std::vector<tf2::Transform>> objects, ros::Publisher* pub, std::shared_ptr<ros::NodeHandle> const& nh)
     : Abstract_mediator(objects, pub), nh_(nh)
     , sampling_planner_(std::make_unique<moveit::task_constructor::solvers::PipelinePlanner>())
@@ -1320,6 +1270,7 @@ Moveit_mediator::Moveit_mediator(std::vector<std::vector<tf2::Transform>> object
 	, job_reader_(std::make_unique<Job_reader>(nh_))
     , cuboid_reader_(std::make_unique<Cuboid_reader>(nh)) {
 
+
         if (planning_scene_monitor_->getPlanningScene()){
             planning_scene_monitor_->startPublishingPlanningScene(planning_scene_monitor::PlanningSceneMonitor::UPDATE_SCENE,
                                                               "planning_scene");
diff --git a/src/mediator/abstract_mediator.cpp b/src/mediator/abstract_mediator.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..8d08e911548f407636e49ed23eabc0810cee8773
--- /dev/null
+++ b/src/mediator/abstract_mediator.cpp
@@ -0,0 +1,14 @@
+#include "mediator/abstract_mediator.h"
+
+Abstract_mediator::Abstract_mediator(std::shared_ptr<ros::NodeHandle> const& d)
+    : nh_(d)
+    , task_space_reader_(std::make_unique<Ts_reader>(d))
+    {}
+
+pcl::PointCloud< pcl::PointXYZ >::Ptr Abstract_mediator::vector_to_cloud(std::vector<pcl::PointXYZ>& vector){
+  pcl::PointCloud< pcl::PointXYZ >::Ptr task_voxel(new pcl::PointCloud< pcl::PointXYZ >);
+  for(pcl::PointXYZ& point : vector)
+    task_voxel->push_back(point);
+  
+  return task_voxel;
+}
diff --git a/src/mediator/base_calculation_mediator.cpp b/src/mediator/base_calculation_mediator.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..4162b3c8c04c17e9e949f302fc74724dfa4a1231
--- /dev/null
+++ b/src/mediator/base_calculation_mediator.cpp
@@ -0,0 +1,550 @@
+#include "mediator/base_calculation_mediator.h"
+
+Base_calculation_mediator::Base_calculation_mediator(std::shared_ptr<ros::NodeHandle> const& nh) 
+    : Abstract_mediator(nh)
+    , wing_reader_(std::make_unique<Wing_reader>(nh))
+    , robot_reader_(std::make_unique<Robot_reader>(nh))
+    , pub_(std::make_unique<ros::Publisher>(nh->advertise< visualization_msgs::MarkerArray >("visualization_marker_array", 1))){};
+
+void Base_calculation_mediator::generate_grounds(const tf2::Vector3 origin, const float diameter, float resolution){
+  for(int i = 0; i < robots_.size();i++){
+    std::vector<pcl::PointXYZ> ground_plane; 
+    for (float x = origin.getX() - diameter * 1.5; x <= origin.getX() + diameter * 1.5; x += resolution){
+        for (float y = origin.getY() - diameter * 1.5; y <= origin.getY() + diameter * 1.5; y += resolution){
+        ground_plane.push_back(pcl::PointXYZ(x,y, robots_[i]->tf().getOrigin().getZ() - 0.0025f));
+        }
+    }
+    grounds_.insert(std::pair<const std::string, std::vector<pcl::PointXYZ>>(robots_[i]->name(), ground_plane));
+  }
+}
+
+void Base_calculation_mediator::connect_robots(std::unique_ptr<Abstract_robot_decorator> robot) {
+    robots_.push_back(std::move(robot)); 
+    ROS_INFO("%s connected...", robots_.back()->name().c_str());
+}
+
+void Base_calculation_mediator::set_panel(){
+    auto wd = wing_reader_->wing_data();
+
+    for (int i = 0; i < robots_.size(); i++){
+        try{
+            auto ceti_bot = dynamic_cast<Ceti_robot*>(robots_[i]->next());
+            ceti_bot->set_observer_mask(static_cast<wing_config>(wd.at(robots_[i]->name()).second));
+        } catch(const std::out_of_range& oor) {
+            ROS_INFO("No mask data for %s", robots_[i]->name().c_str());
+        }
+    }
+    
+    for (int i = 0; i < robots_.size(); i++){
+        auto ceti_bot = dynamic_cast<Ceti_robot*>(robots_[i]->next());
+        std::vector<std::unique_ptr<Abstract_robot_element_decorator>> panels(3);
+            
+        for (std::size_t j = 0; j < ceti_bot->observer_mask().size(); j++){
+            if (ceti_bot->observer_mask()[j]){
+                try{
+                    tf2::Transform relative_tf = ceti_bot->tf().inverse() * wd.at(ceti_bot->name()).first[j].pose_;
+
+                    std::unique_ptr<Abstract_robot_element> panel = std::make_unique<Rviz_panel>(wd.at(robots_[i]->name()).first[j].name_, relative_tf, wd.at(robots_[i]->name()).first[j].size_);
+                    std::unique_ptr<Abstract_robot_element_decorator> log = std::make_unique<Log_decorator>(std::move(panel));
+                    panels[j] = std::move(log);
+                } catch (std::out_of_range &oor){
+                    ROS_INFO("OOR in set_panel");
+                }
+            }
+        }
+        ceti_bot->set_observers(panels);
+    }
+}
+
+bool Base_calculation_mediator::check_collision(const std::string& robot, std::bitset<3>& panel_mask, bool& workload){
+
+    // Visualization workspace definition
+    std::string str;
+    std::stringstream ns;
+    ns << "Targets " << robot;
+
+    // Get Robot reference by name (which is ugly)
+    Ceti_robot* ceti1;
+    for(int i =0; i < robots_.size();i++){
+        if(robots_[i]->name() == robot) {
+            ceti1 = dynamic_cast<Ceti_robot*>(robots_[i]->next());
+        }
+    }
+    
+    // prepare map for workload check
+    std::map<std::string, int> workload_map = {{"base_1", 0}};
+    for (std::size_t i = 0; i < panel_mask.size(); i++){
+        if(panel_mask[i] & ceti1->observer_mask()[i]){
+            workload_map.insert(std::pair<std::string, int>(ceti1->observers()[i]->name(), 0));
+        }
+    }
+
+    auto ts = task_space_reader_->drop_off_data();
+    bool succ = true;
+
+    visualization_msgs::MarkerArray ma;
+    try{
+        for(int i = 0; i < ts.at(robot).size(); i++){
+            visualization_msgs::Marker marker;
+            marker.header.frame_id = "map";
+            marker.header.stamp = ros::Time();
+            marker.ns = ns.str();
+            marker.id = i;
+            marker.type = visualization_msgs::Marker::CUBE;
+            marker.action = visualization_msgs::Marker::ADD;
+            marker.pose.position.x = ts.at(robot)[i].pose_.getOrigin().getX();
+            marker.pose.position.y = ts.at(robot)[i].pose_.getOrigin().getY();
+            marker.pose.position.z = ts.at(robot)[i].pose_.getOrigin().getZ();
+            marker.pose.orientation.x = ts.at(robot)[i].pose_.getRotation().getX();
+            marker.pose.orientation.y = ts.at(robot)[i].pose_.getRotation().getY();
+            marker.pose.orientation.z = ts.at(robot)[i].pose_.getRotation().getZ();
+            marker.pose.orientation.w = ts.at(robot)[i].pose_.getRotation().getW();
+            marker.scale.x = ts.at(robot)[i].size_.getX();
+            marker.scale.y = ts.at(robot)[i].size_.getY();
+            marker.scale.z = ts.at(robot)[i].size_.getZ();
+            if(ceti1->check_single_object_collision(ts.at(robot)[i].pose_, str, panel_mask)){
+                try {
+                    workload_map.at(str)++;
+                } catch (std::out_of_range& oor) {
+                    ROS_INFO("Support surface not in map");
+                    workload_map.insert(std::pair<std::string,int>(str,1));
+                }
+                marker.color.r = 0;
+                marker.color.g = 1.0;
+                marker.color.b = 0;
+                marker.color.a = 1;
+            } else {
+                marker.color.r = 1;
+                marker.color.g = 0;
+                marker.color.b = 0;
+                marker.color.a = 1.0;
+                succ = false;
+            }
+        ma.markers.push_back(marker);
+        }
+    } catch(std::out_of_range& oor){
+        ROS_INFO("Collision checking went wrong");
+    }
+    pub_->publish(ma);
+
+    workload = true; 
+    for (auto& s_i: workload_map) {
+        if (s_i.second == 0) {
+            workload = false;
+            break;
+        }
+    }
+    return succ;
+}
+
+
+void Base_calculation_mediator::mediate(){
+    generate_grounds(tf2::Vector3(0,0,0), 3.0f, 0.1f);
+
+    // estimate workcells
+    auto ts = task_space_reader_->drop_off_data();
+    std::vector<std::vector<std::string>> wcs;
+    /*
+    for (auto it = ts.begin(); it != ts.end(); it++){
+        std::vector<std::string> wc = {it->first};
+        
+        auto itt = std::next(it);
+        for(auto& v1:  it->second){
+            ROS_INFO("penis");
+            for (; itt != ts.end(); itt++){
+                for(auto& v2:  itt->second){
+                    if(tf2::tf2Distance2(v1.pose_.getOrigin(), v2.pose_.getOrigin())){
+                        wc.push_back(itt->first);
+                        break;
+                    }
+                }
+            }
+        }
+        if(wc.size()>1) wcs.push_back(wc);
+    }
+    */
+
+    wcs.push_back(std::vector<std::string>{"panda_arm1", "panda_arm2"}); //assume we have some algorithm
+    std::vector<std::map<const std::string, std::vector<tf2::Transform>>> workcells_with_bases;
+
+    
+    for(auto& workcell: wcs){
+        std::map<const std::string, std::vector<tf2::Transform>> ground_projection;
+        for (auto& robot: workcell){
+            std::vector<tf2::Transform> ground_per_robot;
+            pcl::octree::OctreePointCloudSearch< pcl::PointXYZ >cloud(0.4f);
+            try{
+                cloud.setInputCloud(Abstract_mediator::vector_to_cloud(result_vector_.at(robot)));
+                cloud.addPointsFromInputCloud();
+            
+                for(pcl::PointXYZ& p : grounds_.at(robot)){
+                    double min_x, min_y, min_z, max_x, max_y, max_z;
+                    cloud.getBoundingBox(min_x, min_y, min_z, max_x, max_y, max_z);
+                    bool isInBox = (p.x >= min_x && p.x <= max_x) && (p.y >= min_y && p.y <= max_y) && (p.z >= min_z && p.z <= max_z);
+                    if (isInBox && cloud.isVoxelOccupiedAtPoint(p)) {
+                        std::vector< int > pointIdxVec;
+                        if (cloud.voxelSearch(p, pointIdxVec)) ground_per_robot.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(p.x, p.y, p.z)));
+                    }
+                }
+            } catch (std::out_of_range& oor) {
+                ROS_INFO("No result for robot");
+                ros::shutdown();
+            }
+            ground_projection.insert(std::pair<const std::string, std::vector<tf2::Transform>>(robot,ground_per_robot));
+        }
+        workcells_with_bases.push_back(ground_projection);
+    }
+    
+    ROS_INFO("assigne result to first robot...");
+    for(auto& wc: workcells_with_bases){
+        calculate(wc);
+    }
+
+    /* filter task space to fit setting (shared space), fix that */
+    /*
+    for( int i = 0; i < task_space_reader_->drop_off_data().at(robot).size(); i++){
+        if(i+1 < task_space_reader_->drop_off_data().at(robot).size()){
+
+                }
+            }
+        }
+    }
+    */
+}
+
+void Base_calculation_mediator::calculate(std::map<const std::string, std::vector<tf2::Transform>>& workcell){
+    std::stringstream protobuf; //!< string representing the 
+
+    
+    visualization_msgs::MarkerArray ma;
+    for (auto& s_pos : workcell){
+        Ceti_robot* ceti1;
+        for(int i =0; i < robots_.size();i++){
+            if(robots_[i]->name() == s_pos.first) {
+                ceti1 = dynamic_cast<Ceti_robot*>(robots_[i]->next());
+            }
+        }
+
+        visualization_msgs::Marker m;
+        m.header.frame_id = "map";
+        m.header.stamp = ros::Time();
+        ROS_INFO("pimmel0");
+        m.ns = ceti1->name();
+        m.id = 1;
+        m.type = visualization_msgs::Marker::CUBE;
+        m.action = visualization_msgs::Marker::ADD;
+        m.pose.position.x = ceti1->tf().getOrigin().getX();
+        m.pose.position.y = ceti1->tf().getOrigin().getY();
+        m.pose.position.z = ceti1->tf().getOrigin().getZ();
+        m.pose.orientation.x = ceti1->tf().getRotation().getX();
+        m.pose.orientation.y = ceti1->tf().getRotation().getY();
+        m.pose.orientation.z = ceti1->tf().getRotation().getZ();
+        m.pose.orientation.w = ceti1->tf().getRotation().getW();
+
+        m.scale.x = ceti1->size().getX();
+        m.scale.y = ceti1->size().getY();
+        m.scale.z = ceti1->tf().getOrigin().getZ()*2;
+        m.color.r = 1.0;
+        m.color.g = 1.0;
+        m.color.b = 1.0;
+        m.color.a = 1.0;
+
+        for (std::size_t k = 0; k < ceti1->observer_mask().size(); k++){
+            if(ceti1->observer_mask()[k]){
+                auto wrd = dynamic_cast<Rviz_panel*>(ceti1->observers()[k]->next());
+                ma.markers.push_back(wrd->marker());
+            }
+        }
+
+
+        ma.markers.push_back(m);
+        pub_->publish(ma);
+        ma.markers.clear();
+
+        for(int j = 0; j <= 7; j++){
+            std::bitset<3> wing_config(j);
+            for (long unsigned int i = 0; i < s_pos.second.size(); i++){
+                ceti1->set_tf(s_pos.second[i]);
+                for ( float p = 0; p < 2*M_PI; p += 0.0872665f){
+                    ceti1->rotate(0.0872665f);
+                    ceti1->notify();
+                    m.action = visualization_msgs::Marker::MODIFY;
+                    m.pose.position.x = ceti1->tf().getOrigin().getX();
+                    m.pose.position.y = ceti1->tf().getOrigin().getY();
+                    m.pose.position.z = ceti1->tf().getOrigin().getZ();
+                    m.pose.orientation.x = ceti1->tf().getRotation().getX();
+                    m.pose.orientation.y = ceti1->tf().getRotation().getY();
+                    m.pose.orientation.z = ceti1->tf().getRotation().getZ();
+                    m.pose.orientation.w = ceti1->tf().getRotation().getW();
+                    ma.markers.push_back(m);
+
+                    for (std::size_t k = 0; k < ceti1->observer_mask().size(); k++){
+                        if(ceti1->observer_mask()[k] & wing_config[k]){
+                            auto wrd = dynamic_cast<Rviz_panel*>(ceti1->observers()[k]->next());
+                            ma.markers.push_back(wrd->marker());
+                        }
+                    }
+                    pub_->publish(ma);
+                    ma.markers.clear();
+
+                    bool workload;
+                    bool target_collisions = check_collision(s_pos.first, wing_config, workload);
+                }
+            }
+        }
+        m.action = visualization_msgs::Marker::DELETEALL;
+        ma.markers.push_back(m);
+        pub_->publish(ma);
+        ma.markers.clear();
+    }
+    
+}
+
+void Base_calculation_mediator::approximation(Ceti_robot* robot){
+    auto ceti1 = dynamic_cast<Ceti_robot*>(robots_[1].get());
+    int r1 = 1;
+
+    visualization_msgs::MarkerArray ma;
+
+    for (int i = 0; i <= 7; i++){
+        std::bitset<3> wing_config(i);
+        build_wings(wing_config, r1);
+
+        visualization_msgs::Marker m;
+        m.header.frame_id = "map";
+        m.header.stamp = ros::Time();
+        m.ns = ceti1->name();
+        m.id = 1;
+        m.type = visualization_msgs::Marker::CUBE;
+        m.action = visualization_msgs::Marker::ADD;
+        m.pose.position.x = ceti1->tf().getOrigin().getX();
+        m.pose.position.y = ceti1->tf().getOrigin().getY();
+        m.pose.position.z = ceti1->tf().getOrigin().getZ();
+        m.pose.orientation.x = ceti1->tf().getRotation().getX();
+        m.pose.orientation.y = ceti1->tf().getRotation().getY();
+        m.pose.orientation.z = ceti1->tf().getRotation().getZ();
+        m.pose.orientation.w = ceti1->tf().getRotation().getW();
+        m.scale.x = ceti1->size().getX();
+        m.scale.y = ceti1->size().getY();
+        m.scale.z = ceti1->tf().getOrigin().getZ()*2;
+        m.color.r = 1.0;
+        m.color.g = 1.0;
+        m.color.b = 1.0;
+        m.color.a = 1.0;
+        ma.markers.push_back(m);
+        pub_->publish(ma);
+        ma.markers.clear();
+
+        for (int i  = 0 ; i < robot->access_fields().size(); i++) {
+            ceti1->set_tf(robot->access_fields()[i]->world_tf());
+            //ROS_INFO("field size %i", robot->access_fields().size());
+            for ( float p = 0; p < 2*M_PI; p += M_PI/2){
+                ceti1->rotate(M_PI/2);
+                ceti1->notify();
+
+                m.action = visualization_msgs::Marker::MODIFY;
+                m.pose.position.x = ceti1->tf().getOrigin().getX();
+                m.pose.position.y = ceti1->tf().getOrigin().getY();
+                m.pose.position.z = ceti1->tf().getOrigin().getZ();
+                m.pose.orientation.x = ceti1->tf().getRotation().getX();
+                m.pose.orientation.y = ceti1->tf().getRotation().getY();
+                m.pose.orientation.z = ceti1->tf().getRotation().getZ();
+                m.pose.orientation.w = ceti1->tf().getRotation().getW();
+                ma.markers.push_back(m);
+                
+                for(int j = 0; j < ceti1->observers().size(); j++){
+                    auto wrd = dynamic_cast<Rviz_panel*>(ceti1->observers()[j].get());
+                    ma.markers.push_back(wrd->marker());
+                }
+
+                pub_->publish(ma);
+                ma.markers.clear();
+                if (robot->in_collision(ceti1)) continue;
+
+                
+
+            }
+            
+            //relative_ground.push_back(pcl::PointXYZ(fields->world_tf().getOrigin().getX(), fields->world_tf().getOrigin().getY(), fields->world_tf().getOrigin().getZ()));
+        }
+        ceti1->reset();
+        m.action = visualization_msgs::Marker::DELETEALL;
+        ma.markers.push_back(m);
+        pub_->publish(ma);
+        ma.markers.clear();
+    }
+}
+
+
+void Base_calculation_mediator::write_file(Ceti_robot* A, Ceti_robot* B){
+    std::ofstream o(ros::package::getPath("multi_cell_builder") + "/results/" + dirname_ + "/" + std::to_string(static_cast<int>(ros::Time::now().toNSec())) + ".yaml");
+    double r,p,y;
+    tf2::Matrix3x3 m(A->tf().getRotation());
+    m.getRPY(r,p,y);
+
+
+    float size_x = A->size().getX();
+    float size_y = A->size().getY();
+    float size_z = A->size().getZ();
+
+    float pos_x = A->tf().getOrigin().getX();
+    float pos_y = A->tf().getOrigin().getY();
+    float pos_z = A->tf().getOrigin().getZ() *2 ;
+    float rot_x = A->tf().getRotation().getX();
+    float rot_y = A->tf().getRotation().getY();
+    float rot_z = A->tf().getRotation().getZ();
+    float rot_w = A->tf().getRotation().getW();
+
+
+
+
+
+    std::stringstream ss;
+    ss << "{ 'objects' : [ \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_wheel_1', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_wheel_2', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }},\n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_wheel_3', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_wheel_4', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_body_front', 'pos': { 'x': 0,'y': 0, 'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << A->name().back() << "_table_top', 'pos': { 'x': " << std::to_string(pos_x) << " , 'y': "<< std::to_string(pos_y) << " , 'z': "<< std::to_string(pos_z) << " },'size': { 'length': "<< std::to_string(size_x) << " ,'width': "<< std::to_string(size_y) << " ,'height': "<< std::to_string(size_z) << " },'orientation': { 'x': " << std::to_string(rot_x) << " , 'y': " << std::to_string(rot_y) << " , 'z': " << std::to_string(rot_z) << " , 'w': " << std::to_string(rot_w) << " },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': " << std::to_string(r) << " , 'p': " << std::to_string(p) << " , 'y': " << std::to_string(y) << " } },\n";
+    
+    m.setRotation(B->tf().getRotation());
+    m.getRPY(r,p,y);
+
+    size_x = B->size().getX();
+    size_y = B->size().getY();
+    size_z = B->size().getZ();
+
+    pos_x = B->tf().getOrigin().getX();
+    pos_y = B->tf().getOrigin().getY();
+    pos_z = B->tf().getOrigin().getZ() *2 ;
+    rot_x = B->tf().getRotation().getX();
+    rot_y = B->tf().getRotation().getY();
+    rot_z = B->tf().getRotation().getZ();
+    rot_w = B->tf().getRotation().getW();
+
+    ss << "{ 'id' : 'table" << B->name().back() << "_wheel_1', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_wheel_2', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }},\n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_wheel_3', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_wheel_4', 'pos': { 'x': 0,'y': 0,'z': 0.06 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_body_front', 'pos': { 'x': 0,'y': 0, 'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_body_back', 'pos': { 'x': 0,'y': 0,'z': 0.45 },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_body_left', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_body_right', 'pos': { 'x': 0,'y': 0,'z': 0.50  },'size': { 'length': 0.12,'width': 0.12,'height': 0.12 },'orientation': { 'w': 1 },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }}, \n";
+    ss << "{ 'id' : 'table" << B->name().back() << "_table_top', 'pos': { 'x': " << std::to_string(pos_x) << ", 'y': "<< std::to_string(pos_y) << ", 'z': "<< std::to_string(pos_z) << " },'size': { 'length': "<< std::to_string(size_x) << " ,'width': "<< std::to_string(size_y) << " ,'height': "<< std::to_string(size_z) << " },'orientation': { 'x': " << std::to_string(rot_x) << " , 'y': " << std::to_string(rot_y) << " , 'z': " << std::to_string(rot_z) << " , 'w': " << std::to_string(rot_w) << " },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 }, 'rpy': { 'r': " << std::to_string(r) << ", 'p': " << std::to_string(p) << ", 'y': " << std::to_string(y) << "}},\n";
+
+
+    for (int i = 0; i < A->observers().size(); i++){
+        float x = A->observers()[i]->world_tf().getOrigin().getX();
+        float y = A->observers()[i]->world_tf().getOrigin().getY();
+        float z = A->observers()[i]->world_tf().getOrigin().getZ();
+        float qx = A->observers()[i]->world_tf().getRotation().getX();
+        float qy = A->observers()[i]->world_tf().getRotation().getY();
+        float qz = A->observers()[i]->world_tf().getRotation().getZ();
+        float qw = A->observers()[i]->world_tf().getRotation().getW();
+
+        float length = A->observers()[i]->size().getX();
+        float width = A->observers()[i]->size().getY();
+        float height = A->observers()[i]->size().getZ();
+
+        ss << "{ 'id': '" << A->observers()[i]->name() << "' , 'pos': { 'x': "<< std::to_string(x) << " , 'y': "<< std::to_string(y) << " , 'z': "<< std::to_string(z - 0.25*height) << " } , 'size': { 'length': "<< std::to_string(length) << " , 'width': "<< std::to_string(width) << " , 'height': "<< std::to_string(height) << " } , 'orientation': { 'x': "<< std::to_string(qx) << " , 'y': "<< std::to_string(qy) << " , 'z': "<< std::to_string(qz) << " , 'w': "<< std::to_string(qw) << " } , 'color': { 'r': 0.15 , 'g': 0.15 , 'b': 0.15 } }, \n";
+    }
+
+    
+    for (int i = 0; i < B->observers().size(); i++){
+        float x = B->observers()[i]->world_tf().getOrigin().getX();
+        float y = B->observers()[i]->world_tf().getOrigin().getY();
+        float z = B->observers()[i]->world_tf().getOrigin().getZ();
+        float qx = B->observers()[i]->world_tf().getRotation().getX();
+        float qy = B->observers()[i]->world_tf().getRotation().getY();
+        float qz = B->observers()[i]->world_tf().getRotation().getZ();
+        float qw = B->observers()[i]->world_tf().getRotation().getW();
+
+        float length = B->observers()[i]->size().getX();
+        float width = B->observers()[i]->size().getY();
+        float height = B->observers()[i]->size().getZ();
+
+
+        ss << "{ 'id': '" << B->observers()[i]->name() << "',  'pos': { 'x': "<< std::to_string(x) << ", 'y': "<< std::to_string(y) << " , 'z': "<< std::to_string(z - 0.25*height) << " },'size': { 'length': "<< std::to_string(length) << ",'width': "<< std::to_string(width) << ",'height': "<< std::to_string(height) << " },'orientation': { 'x': "<< std::to_string(qx) << ", 'y': "<< std::to_string(qy) << ", 'z': "<< std::to_string(qz) << ", 'w': "<< std::to_string(qw) << " },'color': { 'r': 0.15,'g': 0.15,'b': 0.15 } }, \n";
+    }
+    tf2::Transform tf_arm =  A->tf() * A->root_tf();
+    float arm_x = tf_arm.getOrigin().getX();
+    float arm_y = tf_arm.getOrigin().getY();
+    float arm_z = tf_arm.getOrigin().getZ();
+    float arm_qx = tf_arm.getRotation().getX();
+    float arm_qy = tf_arm.getRotation().getY();
+    float arm_qz = tf_arm.getRotation().getZ();
+    float arm_qw = tf_arm.getRotation().getW();
+
+    ss << "{ 'id': 'arm" << A->name().back() << "','type': 'ARM','pos': { 'x': " << std::to_string(arm_x) << ", 'y': " << std::to_string(arm_y) << ", 'z': 0.89 },'size': { },'orientation': { 'x': " << std::to_string(arm_qx) <<", 'y': " << std::to_string(arm_qy) << ", 'z': " << std::to_string(arm_qz) << ", 'w': " << std::to_string(arm_qw) << " },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } }, \n";
+
+    tf_arm =  B->tf() * B->root_tf();
+    arm_x = tf_arm.getOrigin().getX();
+    arm_y = tf_arm.getOrigin().getY();
+    arm_z = tf_arm.getOrigin().getZ();
+    arm_qx = tf_arm.getRotation().getX();
+    arm_qy = tf_arm.getRotation().getY();
+    arm_qz = tf_arm.getRotation().getZ();
+    arm_qw = tf_arm.getRotation().getW();
+
+    ss << "{ 'id': 'arm" << B->name().back() << "','type': 'ARM','pos': { 'x': " << std::to_string(arm_x) << ", 'y': " << std::to_string(arm_y) << ", 'z': 0.89 },'size': { },'orientation': { 'x': " << std::to_string(arm_qx) <<", 'y': " << std::to_string(arm_qy) << ", 'z': " << std::to_string(arm_qz) << ", 'w': " << std::to_string(arm_qw) << " },'color': { 'r': 1.00,'g': 1.00,'b': 1.00 } } \n";
+
+    ss << "]}";
+
+    o << ss.str();
+    o.close();
+    
+}
+
+void Base_calculation_mediator::build_wings(std::bitset<3>& wing, int& robot){
+    auto ceti = dynamic_cast<Ceti_robot*>(robots_[robot].get());
+    std::bitset<3> result = ceti->observer_mask() & wing;
+    
+    for (std::size_t i = 0; i < result.size(); i++){
+        if (result[i]){
+            ceti->register_observers(std::move(wings_[robot][i]));
+        }
+    }
+
+    visualization_msgs::MarkerArray ma;
+    for (int i = 0; i < ceti->observers().size(); i++){
+        auto wrd = dynamic_cast<Rviz_panel*>(ceti->observers()[i].get());
+        wrd->marker().action = visualization_msgs::Marker::ADD;
+        ma.markers.push_back(wrd->marker());
+    }
+    pub_->publish(ma);
+}
+
+void Base_calculation_mediator::publish(Ceti_robot* ar){
+    visualization_msgs::MarkerArray ma;
+    visualization_msgs::Marker marker;
+    marker.header.frame_id = "map";
+    marker.header.stamp = ros::Time();
+    marker.ns = ar->name();
+    marker.id = 1;
+    marker.type = visualization_msgs::Marker::CUBE;
+    marker.action = visualization_msgs::Marker::MODIFY;
+    marker.pose.position.x = ar->tf().getOrigin().getX();
+    marker.pose.position.y = ar->tf().getOrigin().getY();
+    marker.pose.position.z = ar->tf().getOrigin().getZ();
+    marker.pose.orientation.x = ar->tf().getRotation().getX();
+    marker.pose.orientation.y = ar->tf().getRotation().getY();
+    marker.pose.orientation.z = ar->tf().getRotation().getZ();
+    marker.pose.orientation.w = ar->tf().getRotation().getW();
+    marker.scale.x = ar->size().getX();
+    marker.scale.y = ar->size().getY();
+    marker.scale.z = ar->size().getZ();
+    marker.color.r = 1.0;
+    marker.color.g = 1.0;
+    marker.color.b = 1.0;
+    marker.color.a = 1.0;
+    for (int i = 0; i < ar->observers().size(); i++){
+        auto wrd = dynamic_cast<Rviz_panel*>(ar->observers()[i].get());
+        ma.markers.push_back(wrd->marker());
+    }
+    
+    //pub_->publish(ma);
+}
diff --git a/src/reader/map_reader.cpp b/src/reader/map_reader.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..0fedf2819b0cc470a50b07ad899be49b5cda57d9
--- /dev/null
+++ b/src/reader/map_reader.cpp
@@ -0,0 +1,26 @@
+#include "reader/map_reader.h"
+
+void Map_reader::read(){
+    XmlRpc::XmlRpcValue resources;
+    nh_->getParam("/data", resources);
+
+    std::vector<tf2::Transform> map_data;
+    ROS_INFO("--- MAP_READER ---");
+
+    
+    for(int i = 0; i < resources.size(); i++){
+        tf2::Vector3 pos;
+        tf2::Quaternion rot;
+
+        (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
+        (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
+        (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"])) :pos.setZ(0);
+        (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
+        (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
+        (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
+        (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
+        map_data.push_back(tf2::Transform(rot, pos));
+    }
+    
+    set_map_data(map_data);
+}
diff --git a/src/reader/ts_reader.cpp b/src/reader/ts_reader.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..a827566a3c838141efeccbc7d895e4bcd1df53c5
--- /dev/null
+++ b/src/reader/ts_reader.cpp
@@ -0,0 +1,74 @@
+#include "reader/ts_reader.h"
+
+void Ts_reader::read(){
+    std::string filename = "dummy.yaml";
+    //nh_->getParam("/resource_name", filename);
+
+    XmlRpc::XmlRpcValue resources;
+    nh_->getParam("/objects", resources);
+
+    std::vector<object_data> robot_middle;
+    std::vector<object_data>* robot_pointer = nullptr;
+
+
+    std::regex rx("table([0-9]+)_table_top");
+    std::smatch match;
+
+    ROS_INFO("--- TASK_SPACE_READER ---");
+    std::map<const std::string, std::vector<object_data>> map;
+
+    for(int i = 0; i < resources.size(); i++){
+      std::string str = resources[i]["id"];
+      if (std::regex_match(str, match, rx)){
+        std::stringstream ss;
+        ss << "panda_arm" << match[1].str().c_str();
+        map.insert(std::make_pair<const std::string, std::vector<object_data>>(ss.str().c_str(), std::vector<object_data>()));
+      }
+    }
+
+    for (int i = 0; i < resources.size(); i++){
+      if (resources[i]["type"] == "DROP_OFF_LOCATION"){
+        std::string str = resources[i]["id"];
+        if(str[0] == 'A')  robot_pointer = &map.at("panda_arm1");
+        if(str[0] == 'B')  robot_pointer = &map.at("panda_arm1");
+        if(str[0] == 'C')  robot_pointer = &map.at("panda_arm1");
+        if(str[0] == 'D')  robot_pointer = &map.at("panda_arm1");
+        if(str[0] == 'E')  robot_pointer = &robot_middle;
+        if(str[0] == 'F')  robot_pointer = &robot_middle;
+        if(str[0] == 'G')  robot_pointer = &map.at("panda_arm2");
+        if(str[0] == 'H')  robot_pointer = &map.at("panda_arm2");
+        if(str[0] == 'I')  robot_pointer = &map.at("panda_arm2");
+        if(str[0] == 'J')  robot_pointer = &map.at("panda_arm2");
+      
+        if (robot_pointer){
+          tf2::Vector3 pos(0,0,0);
+          tf2::Quaternion rot(0,0,0,1);
+          tf2::Vector3 size(0,0,0);
+
+          (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
+          (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
+          (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
+
+          (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
+          (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
+          (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"])) :pos.setZ(0);
+
+          (resources[i]["orientation"].hasMember("x")) ? pos.setZ(float_of(resources[i]["orientation"]["x"])) :pos.setX(0);
+          (resources[i]["orientation"].hasMember("y")) ? pos.setZ(float_of(resources[i]["orientation"]["y"])) :pos.setY(0);
+          (resources[i]["orientation"].hasMember("z")) ? pos.setZ(float_of(resources[i]["orientation"]["z"])) :pos.setZ(0);
+          (resources[i]["orientation"].hasMember("w")) ? pos.setZ(float_of(resources[i]["orientation"]["w"])) :pos.setW(0);
+
+          robot_pointer->push_back({"", tf2::Transform(rot, pos), size});
+        }
+      }
+      robot_pointer = nullptr;
+    }
+
+    for(auto& robot: map){
+      for(object_data& tf : robot_middle){
+        robot.second.push_back(tf);
+      }
+    }
+
+    set_drop_off_data(map);
+}
\ No newline at end of file
diff --git a/src/reader/wing_reader.cpp b/src/reader/wing_reader.cpp
index 0af4e425971000a8c8b77b799f2896cc4930ed92..d88a9b9d213d1f55184bf456afab14e49904e2c5 100644
--- a/src/reader/wing_reader.cpp
+++ b/src/reader/wing_reader.cpp
@@ -7,127 +7,165 @@ void Wing_reader::read(){
     std::regex rx("table([0-9]+)_table_top");
     std::smatch match;
 
+    std::map<const std::string, std::pair<std::vector<object_data>, int>> map;
+
     ROS_INFO("--- WING_READER ---");
-    for(int i = 0; i < resources.size(); i++){
-        std::string str = resources[i]["id"];
-        if(std::regex_match(str, match, rx)){
-            std::vector<object_data> wd;
-            wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
-            wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
-            wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
-            std::pair<std::vector<object_data>, int> pair;
-            pair.first = wd;
-            pair.second = 0;
-            wing_data_.push_back(pair);
-        }
+    try{
+      for(int i = 0; i < resources.size(); i++){
+          std::string str = resources[i]["id"];
+          if(std::regex_match(str, match, rx)){
+              std::stringstream ss;
+              ss << "panda_arm" << match[1].str().c_str();
+              std::vector<object_data> wd;
+              wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
+              wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
+              wd.push_back({"", tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0,0)), tf2::Vector3(0,0,0)});
+              map.insert(std::pair<const std::string, std::pair<std::vector<object_data>, int>>(ss.str(), {wd, 0}));
+          }
+      }
+    } catch (const XmlRpc::XmlRpcException& xre) {
+      ROS_INFO("Iteration error in Blueprint initialization");
+      ros::shutdown();
     }
 
 
     rx.assign("table([0-9]+)_right_panel");
-    for(int i = 0; i < resources.size(); i++){
-      std::string str = resources[i]["id"];
-      if (std::regex_match(str, match, rx)){
-        ROS_INFO("=> WING: description found, loading...");
-        tf2::Vector3 pos;
-        tf2::Vector3 size;
-        tf2::Quaternion rot;
-
-        
-        (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
-        (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
-        (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
-
-        (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
-        (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
-        (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
-        (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
-        (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
-        (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
-        (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
-
-        ROS_INFO("--- Wing %s ---", str.c_str());
-        ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
-        ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
-        ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
-
-
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[0].name_ = str.c_str();
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[0].pose_ = tf2::Transform(rot.normalized(), pos); // mediator->robots()[0]->tf().inverse() *
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[0].size_ = size;
-        wing_data_[std::atoi(match[1].str().c_str())-1].second += std::pow(2, 0);
+    try{
+      for(int i = 0; i < resources.size(); i++){
+        std::string str = resources[i]["id"];
+        if (std::regex_match(str, match, rx)){
+          std::stringstream ss;
+          ss << "panda_arm" << match[1].str().c_str();
+
+          ROS_INFO("=> WING: description found, loading...");
+          tf2::Vector3 pos;
+          tf2::Vector3 size;
+          tf2::Quaternion rot;
+
+          (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
+          (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
+          (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
+
+          (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
+          (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
+          (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
+          (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
+          (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
+          (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
+          (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
+
+          ROS_INFO("--- Wing %s ---", str.c_str());
+          ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
+          ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
+          ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
+
+          try {
+            map.at(ss.str()).first[0].name_ = str.c_str();
+            map.at(ss.str()).first[0].pose_ = tf2::Transform(rot.normalized(), pos);
+            map.at(ss.str()).first[0].size_ = size;
+            map.at(ss.str()).second += std::pow(2, 0);
+          } catch (const std::out_of_range& oor) {
+            ROS_INFO("Found panel for unknown robot");
+          }
+        }
       }
+    } catch (const XmlRpc::XmlRpcException& xre){
+      ROS_INFO("Iteration error in right panel search");
+      ros::shutdown();
     }
 
-    rx.assign("table([0-9]+)_front_panel");
-    for(int i = 0; i < resources.size(); i++){
-      std::string str = resources[i]["id"];
-      if (std::regex_match(str, match, rx)){
-        ROS_INFO("=> WING: description found, loading...");
-        tf2::Vector3 pos;
-        tf2::Vector3 size;
-        tf2::Quaternion rot;
-
-        
-        (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
-        (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
-        (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
-
-        (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
-        (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
-        (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
-        (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
-        (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
-        (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
-        (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
-
-        ROS_INFO("--- Wing %s ---", str.c_str());
-        ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
-        ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
-        ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
-
-
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[1].name_ = str.c_str();
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[1].pose_ = tf2::Transform(rot.normalized(), pos); // mediator->robots()[0]->tf().inverse() *
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[1].size_ = size;
-        wing_data_[std::atoi(match[1].str().c_str())-1].second += std::pow(2, 1);
-
 
+    rx.assign("table([0-9]+)_front_panel");
+    try {
+      for(int i = 0; i < resources.size(); i++){
+        std::string str = resources[i]["id"];
+        if (std::regex_match(str, match, rx)){
+          std::stringstream ss;
+          ss << "panda_arm" << match[1].str().c_str();
+
+          ROS_INFO("=> WING: description found, loading...");
+          tf2::Vector3 pos;
+          tf2::Vector3 size;
+          tf2::Quaternion rot;
+
+          
+          (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
+          (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
+          (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
+
+          (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
+          (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
+          (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
+          (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
+          (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
+          (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
+          (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
+
+          ROS_INFO("--- Wing %s ---", str.c_str());
+          ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
+          ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
+          ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
+
+          try {
+            map.at(ss.str()).first[1].name_ = str.c_str();
+            map.at(ss.str()).first[1].pose_ = tf2::Transform(rot.normalized(), pos);
+            map.at(ss.str()).first[1].size_ = size;
+            map.at(ss.str()).second += std::pow(2, 1);
+          } catch (const std::out_of_range& oor) {
+            ROS_INFO("Found panel for unknown robot");
+          }
+        }
       }
+    } catch(const XmlRpc::XmlRpcException& xre){
+      ROS_INFO("Iteration error in front panel search");
+      ros::shutdown();
     }
 
-    rx.assign("table([0-9]+)_left_panel");
-    for(int i = 0; i < resources.size(); i++){
-      std::string str = resources[i]["id"];
-      if (std::regex_match(str, match, rx)){
-        ROS_INFO("=> WING: description found, loading...");
-        tf2::Vector3 pos;
-        tf2::Vector3 size;
-        tf2::Quaternion rot;
-
-        
-        (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
-        (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
-        (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
-
-        (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
-        (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
-        (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
-        (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
-        (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
-        (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
-        (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
-
-        ROS_INFO("--- Wing %s ---", str.c_str());
-        ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
-        ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
-        ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
-
-
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[2].name_ = str.c_str();
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[2].pose_ = tf2::Transform(rot.normalized(), pos); // mediator->robots()[0]->tf().inverse() *
-        wing_data_[std::atoi(match[1].str().c_str())-1].first[2].size_ = size;
-        wing_data_[std::atoi(match[1].str().c_str())-1].second += std::pow(2, 2);
 
+    rx.assign("table([0-9]+)_left_panel");
+    try{
+      for(int i = 0; i < resources.size(); i++){
+        std::string str = resources[i]["id"];
+        if (std::regex_match(str, match, rx)){
+          std::stringstream ss;
+          ss << "panda_arm" << match[1].str().c_str();
+
+          ROS_INFO("=> WING: description found, loading...");
+          tf2::Vector3 pos;
+          tf2::Vector3 size;
+          tf2::Quaternion rot;
+
+          
+          (resources[i]["size"].hasMember("length")) ? size.setX(float_of(resources[i]["size"]["length"])) :size.setX(0);
+          (resources[i]["size"].hasMember("width")) ? size.setY(float_of(resources[i]["size"]["width"])) :size.setY(0);
+          (resources[i]["size"].hasMember("height")) ? size.setZ(float_of(resources[i]["size"]["height"])) :size.setZ(0);
+
+          (resources[i]["pos"].hasMember("x")) ? pos.setX(float_of(resources[i]["pos"]["x"])) :pos.setX(0);
+          (resources[i]["pos"].hasMember("y")) ? pos.setY(float_of(resources[i]["pos"]["y"])) :pos.setY(0);
+          (resources[i]["pos"].hasMember("z")) ? pos.setZ(float_of(resources[i]["pos"]["z"]) + size.getZ()/2) :pos.setZ(0);
+          (resources[i]["orientation"].hasMember("x")) ? rot.setX(float_of(resources[i]["orientation"]["x"])) :rot.setX(0);
+          (resources[i]["orientation"].hasMember("y")) ? rot.setY(float_of(resources[i]["orientation"]["y"])) :rot.setY(0);
+          (resources[i]["orientation"].hasMember("z")) ? rot.setZ(float_of(resources[i]["orientation"]["z"])) :rot.setZ(0);
+          (resources[i]["orientation"].hasMember("w")) ? rot.setW(float_of(resources[i]["orientation"]["w"])) :rot.setW(0);
+
+          ROS_INFO("--- Wing %s ---", str.c_str());
+          ROS_INFO("=> WING: pos('%f', '%f', '%f')", pos.getX(), pos.getY(), pos.getZ());
+          ROS_INFO("=> WING: orientation('%f', '%f', '%f', '%f')", rot.getX(), rot.getY(), rot.getZ(), rot.getW());
+          ROS_INFO("=> WING: size('%f', '%f', '%f')", size.getX(), size.getY(), size.getZ());
+
+          try {
+            map.at(ss.str()).first[2].name_ = str.c_str();
+            map.at(ss.str()).first[2].pose_ = tf2::Transform(rot.normalized(), pos);
+            map.at(ss.str()).first[2].size_ = size;
+            map.at(ss.str()).second += std::pow(2, 2);
+          } catch (const std::out_of_range& oor) {
+            ROS_INFO("Found panel for unknown robot");
+          }
+        }
       }
+    } catch(const XmlRpc::XmlRpcException& xre){
+      ROS_INFO("Iteration error in left panel search");
+      ros::shutdown();
     }
+    set_wing_data(map);
 }
diff --git a/src/robot/abstract_robot.cpp b/src/robot/abstract_robot.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..3a36b22341c820de68f0936dcf4bbf5d55d2aabd
--- /dev/null
+++ b/src/robot/abstract_robot.cpp
@@ -0,0 +1,27 @@
+#include "robot/abstract_robot.h"
+
+
+Abstract_robot::Abstract_robot(std::string name, tf2::Transform tf, tf2::Vector3 size) 
+: name_(name)
+, tf_(tf)
+, size_(size){
+    root_tf_= tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.22f, 0, tf.getOrigin().getZ()));
+
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( size.getX(), size.getY(), tf.getOrigin().getZ()))); // ++
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-size.getX(), size.getY(), tf.getOrigin().getZ()))); // +-
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-size.getX(), -size.getY(), tf.getOrigin().getZ()))); //-+
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3( size.getX(), -size.getY(), tf.getOrigin().getZ()))); // --
+    
+    // root
+    robot_root_bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, 0.095f, 0))); // ++
+    robot_root_bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, 0.095f, 0))); // +-
+    robot_root_bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, -0.095f, 0)));
+    robot_root_bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, -0.095f, 0)));
+}
+
+float Abstract_robot::area_calculation(tf2::Transform& A, tf2::Transform& B, tf2::Transform& C){
+    return std::abs(
+                    (B.getOrigin().getX() * A.getOrigin().getY()) - (A.getOrigin().getX() * B.getOrigin().getY()) +
+                    (C.getOrigin().getX() * B.getOrigin().getY()) - (B.getOrigin().getX() * C.getOrigin().getY()) +
+                    (A.getOrigin().getX() * C.getOrigin().getY()) - (C.getOrigin().getX() * A.getOrigin().getY()))*0.5f;
+}
\ No newline at end of file
diff --git a/src/robot/ceti_robot.cpp b/src/robot/ceti_robot.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..25231c5da9dc76541e8c2a83d7851910ba98ad32
--- /dev/null
+++ b/src/robot/ceti_robot.cpp
@@ -0,0 +1,181 @@
+#include "robot/ceti_robot.h"
+#include <regex>
+
+Ceti_robot::Ceti_robot(std::string& name, tf2::Transform tf, tf2::Vector3 size) 
+: Abstract_robot(name, tf, size)
+, observer_mask_(std::bitset<3>(0))
+{
+    generate_access_fields();
+}
+
+
+
+void Ceti_robot::generate_access_fields(){
+    for (int i = 0; i <= 2; i++){
+        for (int j = 0; j <= 2; j++){
+            if(i == 0 && j == 0) {continue;}
+            if(i == 2 && j == 2) {continue;}
+            if(i == 0) {
+                access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,size_.getY()*j,0))));
+                access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-size_.getY()*j,0))));
+            } else if (j == 0){
+                access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()*i,0,0))));
+                access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-size_.getX()*i,0,0))));
+            } else {
+            access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()*i,size_.getY()*j,0))));
+            access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-size_.getX()*i,size_.getY()*j,0))));
+            access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()*i,-size_.getY()*j,0))));
+            access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-size_.getX()*i,-size_.getY()*j,0))));
+            }
+
+        };
+    };
+    access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(1.305f,0,0))));
+    access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-1.305f,0,0))));
+    access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,1.305f,0))));
+    access_fields_.push_back(std::make_unique<Field>(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,-1.305f,0)))); 
+}
+
+bool Ceti_robot::check_single_object_collision(tf2::Transform& obj, std::string& str, std::bitset<3>& panel_mask){
+
+    // 1. Root joint check
+    tf2::Transform A = tf_ * root_tf_ * robot_root_bounds_[0];
+    tf2::Transform B = tf_ * root_tf_ * robot_root_bounds_[1];
+    tf2::Transform C = tf_ * root_tf_ * robot_root_bounds_[2];
+    tf2::Transform D = tf_ * root_tf_ * robot_root_bounds_[3];
+
+    float full_area = area_calculation(A,B,C) + area_calculation(A,D,C);
+    float sum = area_calculation(A,obj,D) + area_calculation(D,obj,C) + area_calculation(C,obj,B) + area_calculation(obj, B, A);
+    if ((std::floor(sum*100)/100.f) <= full_area) {return false; } 
+    
+    // 2. table_top check
+    std::stringstream ss;
+    std::regex rx("panda_arm([0-9]+)");
+    std::smatch match;
+    std::regex_match(str, match, rx);
+
+    ss << "base_" << match[1]; 
+    A = tf_ * bounds_[0];
+    B = tf_ * bounds_[1];
+    C = tf_ * bounds_[2];
+    D = tf_ * bounds_[3];
+
+    full_area = area_calculation(A,B,C) + area_calculation(A,D,C);
+    sum = area_calculation(A,obj,D) + area_calculation(D,obj,C) + area_calculation(C,obj,B) + area_calculation(obj, B, A);
+    if ((std::floor(sum*100)/100.f) <= full_area){
+        str = ss.str();
+        return true;
+    }
+
+    // 3. panel collsision check
+    for(std::size_t i = 0; i < panel_mask.size(); i++){
+        if(observer_mask_[i] & panel_mask[i]){
+            tf2::Transform A = observers_[i]->world_tf() * observers_[i]->bounds()[0];
+            tf2::Transform B = observers_[i]->world_tf() * observers_[i]->bounds()[1];
+            tf2::Transform C = observers_[i]->world_tf() * observers_[i]->bounds()[2];
+            tf2::Transform D = observers_[i]->world_tf() * observers_[i]->bounds()[3];
+
+            full_area = area_calculation(A,B,C) + area_calculation(A,D,C);
+            sum = area_calculation(A,obj,D) + area_calculation(D,obj,C) + area_calculation(C,obj,B) + area_calculation(obj, B, A);
+            if ((std::floor(sum*100)/100.f) <= full_area) {
+                str = observers_[i]->name();
+                return true;
+            } 
+        }
+    }
+    return false;
+}
+
+void Ceti_robot::reset(){
+    observers_.clear();
+    access_fields_.clear();
+    generate_access_fields();
+    tf_ = tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0,0, tf().getOrigin().getZ()));
+}
+
+void Ceti_robot::notify(){ 
+    for(int i = 0; i < observers_.size(); i++) observers_[i]->update(tf_); 
+    for(int i = 0; i < access_fields_.size(); i++) access_fields_[i]->update(tf_);
+}
+
+bool Ceti_robot::in_collision(Ceti_robot* rob){
+    tf2::Transform A = tf_ * bounds_[0];
+    tf2::Transform B = tf_ * bounds_[1];
+    tf2::Transform C = tf_ * bounds_[2];
+    tf2::Transform D = tf_ * bounds_[3];
+
+    float full_area = area_calculation(A,B,C) + area_calculation(A,D,C);
+    float sum = area_calculation(A,rob->tf(),D) + area_calculation(D,rob->tf(),C) + area_calculation(C,rob->tf(),B) + area_calculation(rob->tf(), B, A);
+    if ((std::floor(sum*100)/100.f) <= full_area) return true;
+
+    for(int i = 0; i < rob->observers().size(); i++) {
+        tf2::Transform WA = rob->observers()[i]->world_tf() * rob->observers()[i]->bounds()[0];
+        tf2::Transform WB = rob->observers()[i]->world_tf() * rob->observers()[i]->bounds()[1];
+        tf2::Transform WC = rob->observers()[i]->world_tf() * rob->observers()[i]->bounds()[2];
+        tf2::Transform WD = rob->observers()[i]->world_tf() * rob->observers()[i]->bounds()[3];
+        sum = area_calculation(A,WA,D) + area_calculation(D,WA,C) + area_calculation(C,WA,B) + area_calculation(WA, B, A); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+        sum = area_calculation(A,WB,D) + area_calculation(D,WB,C) + area_calculation(C,WB,B) + area_calculation(WB, B, A); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+        sum = area_calculation(A,WC,D) + area_calculation(D,WC,C) + area_calculation(C,WC,B) + area_calculation(WC, B, A); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+        sum = area_calculation(A,WD,D) + area_calculation(D,WD,C) + area_calculation(C,WD,B) + area_calculation(WD, B, A); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+    }
+
+    for (int i = 0; i < observers_.size(); i++){
+        tf2::Transform WA = observers_[i]->world_tf() * observers_[i]->bounds()[0];
+        tf2::Transform WB = observers_[i]->world_tf() * observers_[i]->bounds()[1];
+        tf2::Transform WC = observers_[i]->world_tf() * observers_[i]->bounds()[2];
+        tf2::Transform WD = observers_[i]->world_tf() * observers_[i]->bounds()[3];
+
+        full_area = area_calculation(WA,WB,WC) + area_calculation(WA,WD,WC);
+        for(int j = 0; j < rob->observers().size(); j++) {
+            tf2::Transform WA2 = rob->observers()[j]->world_tf() * observers_[j]->bounds()[0];
+            tf2::Transform WB2 = rob->observers()[j]->world_tf() * observers_[j]->bounds()[1];
+            tf2::Transform WC2 = rob->observers()[j]->world_tf() * observers_[j]->bounds()[2];
+            tf2::Transform WD2 = rob->observers()[j]->world_tf() * observers_[j]->bounds()[3];
+            sum = area_calculation(WA,WA2,WD) + area_calculation(WD,WA2,WC) + area_calculation(WC,WA2,WB) + area_calculation(WA2, WB, WA); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+            sum = area_calculation(WA,WB2,WD) + area_calculation(WD,WB2,WC) + area_calculation(WC,WB2,WB) + area_calculation(WB2, WB, WA); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+            sum = area_calculation(WA,WC2,WD) + area_calculation(WD,WC2,WC) + area_calculation(WC,WC2,WB) + area_calculation(WC2, WB, WA); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+            sum = area_calculation(WA,WD2,WD) + area_calculation(WD,WD2,WC) + area_calculation(WC,WD2,WB) + area_calculation(WD2, WB, WA); if ((std::floor(sum*100)/100.f) <= full_area) return true;
+        }
+    }
+    return false;
+}
+
+
+
+void Ceti_robot::register_observers(std::unique_ptr<Abstract_robot_element> wd){
+    /*
+    auto deco = dynamic_cast<Abstract_robot_element_decorator*>(wd.get());
+    bool found = false;
+    int index = 0;
+
+    if (deco->wing()->relative_tf().getOrigin().getY()>0){
+        for(long unsigned int i = 0; i < access_fields_.size(); i++){
+            if ((access_fields_[i]->relative_tf().getOrigin().getY() > 0) && (access_fields_[i]->relative_tf().getOrigin().getX() == 0)){
+                found = true;
+                index = i;
+                break;
+            }
+        }
+        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}
+    } else if (deco->wing()->relative_tf().getOrigin().getY()<0) {
+        for(long unsigned int i = 0; i < access_fields_.size(); i++){
+            if ((access_fields_[i]->relative_tf().getOrigin().getY() < 0) && (access_fields_[i]->relative_tf().getOrigin().getX() == 0)){
+                found = true;
+                index = i;
+                break;
+            }
+        }
+        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}
+    } else {
+        for(long unsigned int i = 0; i < access_fields_.size(); i++){
+            if (access_fields_[i]->relative_tf().getOrigin().getX() > 0){
+                found = true;
+                index = i;
+                break;
+            }
+        }
+        if(found) {access_fields_.erase(access_fields_.begin() + index); return;}
+    }
+    observers_.push_back(std::move(wd));
+    */
+};
diff --git a/src/robot/decorators/panda_decorator.cpp b/src/robot/decorators/panda_decorator.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..1f7d039b2bd3449436e468599d5240a8bff90c86
--- /dev/null
+++ b/src/robot/decorators/panda_decorator.cpp
@@ -0,0 +1,46 @@
+#include "robot/decorators/panda_decorator.h"
+#include <regex>
+
+Panda_decorator::Panda_decorator(std::unique_ptr<Abstract_robot> next) 
+    : Abstract_robot_decorator(std::move(next))
+    {
+        spezifie_root_bounds();
+        ROS_INFO("penis1");
+        // spezifie_robot_groups();
+
+
+    }
+
+void Panda_decorator::spezifie_root_bounds(){
+    // root
+    next_->robot_root_bounds().clear();
+    next_->robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, 0.095f, 0))); // ++
+    next_->robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, 0.095f, 0))); // +-
+    next_->robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(-0.113f, -0.095f, 0)));
+    next_->robot_root_bounds().push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(0.113f, -0.095f, 0)));
+}
+
+void Panda_decorator::spezifie_robot_groups(){
+    std::stringstream hand_n, ik_frame_n, name_n, base_n;
+
+    std::regex panda_id("panda_arm([0-9]+)"), left_finger("left_finger"), right_finger("right_finger"), hand_link("hand_link");
+    std::smatch match;
+    std::regex_match(next_->name(), match, panda_id);
+
+    hand_n << "hand_" << match[1];
+    ik_frame_n << "panda_" << match[1] << "_link8";
+    base_n << "base_" << match[1];
+
+    for (auto& link : mgi_hand_->getLinkNames()){
+        if (std::regex_match(link, match, left_finger)) map_.insert(std::pair<std::string, std::string>("left_finger", link));
+        if (std::regex_match(link, match, right_finger)) map_.insert(std::pair<std::string, std::string>("right_finger", link));
+        if (std::regex_match(link, match, hand_link)) map_.insert(std::pair<std::string, std::string>("hand_link", link));
+    }
+
+    mgi_hand_ = std::make_shared<moveit::planning_interface::MoveGroupInterface>(hand_n.str());
+
+    map_.insert(std::make_pair<std::string, std::string>("eef_name", hand_n.str()));
+    map_.insert(std::make_pair<std::string, std::string>("hand_frame", ik_frame_n.str()));
+    map_.insert(std::make_pair<std::string, std::string>("hand_group_name", hand_n.str()));
+    map_.insert(std::make_pair<std::string, std::string>("base", base_n.str()));
+}
diff --git a/src/robot_base_calculation_approach.cpp b/src/robot_base_calculation_approach.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..4a773099d70a7f69fa2ca47fd9b5e0721b813e54
--- /dev/null
+++ b/src/robot_base_calculation_approach.cpp
@@ -0,0 +1,76 @@
+
+#include <xmlrpcpp/XmlRpc.h>
+#include <filesystem>
+
+
+#include "reader/abstract_param_reader.h"
+#include "reader/robot_reader.h"
+#include "reader/wing_reader.h"
+
+#include "bridge/abstract_base.h"
+#include "bridge/abstract_base_implementation.h"
+#include "bridge/simple_base.h"
+#include "bridge/simple_base_implementation.h"
+
+#include "robot/abstract_robot.h"
+#include "robot/ceti_robot.h"
+#include "robot/decorators/abstract_robot_decorator.h"
+#include "robot/decorators/panda_decorator.h"
+
+
+#include "robot_element/abstract_robot_element.h"
+#include "robot_element/decorators/abstract_robot_element_decorator.h"
+#include "robot_element/decorators/log_decorator.h"
+
+#include "robot_element/observers/panel.h"
+#include "robot_element/observers/rviz_panel.h"
+
+#include "mediator/abstract_mediator.h"
+#include "mediator/base_calculation_mediator.h"
+
+
+int main(int argc, char **argv){
+    ros::init(argc, argv, "robot_base_calculation_apprioach");
+    std::shared_ptr<ros::NodeHandle> n(new ros::NodeHandle);
+
+    std::shared_ptr<Abstract_base> simple_base = std::make_shared<Simple_base>(n);
+    std::shared_ptr<Abstract_base_implementation> simple_base_implementation = std::make_shared<Simple_base_implementation>();
+    std::shared_ptr<Base_calculation_mediator> mediator = std::make_shared<Base_calculation_mediator>(n);
+
+    simple_base->set_implementation(simple_base_implementation);
+
+    simple_base->base_calculation();
+
+    auto rd = mediator->robot_reader()->robot_data();
+    for (int i = 0; i < rd.size() ;i++){
+        std::unique_ptr<Abstract_robot> ceti = std::make_unique<Ceti_robot>(rd[i].name_, rd[i].pose_, rd[i].size_);
+        std::unique_ptr<Panda_decorator> ceti_panda = std::make_unique<Panda_decorator>(std::move(ceti));
+        mediator->connect_robots(std::move(ceti_panda));
+    }
+
+    mediator->set_result_vector(simple_base->result());
+    //mediator->set_dirname(filename);
+
+    mediator->set_panel();
+    
+    mediator->mediate();
+
+
+
+    /*
+    //map_loader->write_task(robo);
+
+    //free(rviz_right);
+    //free(rviz_mid);
+    //free(rviz_left);
+
+
+    free(map_loader);
+    free(strategy);
+
+    //free(robo);
+
+    //free(robo2);
+    */
+    return 0;
+}
\ No newline at end of file
diff --git a/src/robot_element/decorators/abstract_robot_element_decorator.cpp b/src/robot_element/decorators/abstract_robot_element_decorator.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/robot_element/decorators/log_decorator.cpp b/src/robot_element/decorators/log_decorator.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..946c37dd57aa186683b36530cfa0a542b042e2f1
--- /dev/null
+++ b/src/robot_element/decorators/log_decorator.cpp
@@ -0,0 +1,26 @@
+#include "robot_element/decorators/log_decorator.h"
+
+Log_decorator::Log_decorator(std::unique_ptr<Abstract_robot_element> next) 
+: Abstract_robot_element_decorator(std::move(next))
+{
+    ROS_INFO("LOG Decorator: %s", next_->name().c_str());
+}
+
+void Log_decorator::input_filter() {
+    ROS_INFO("--- Debug: %s --- State: PRE UPDATE", next_->name().c_str());
+    ROS_INFO("=> Debug: pos('%f', '%f', '%f')", world_tf().getOrigin().getX(), world_tf().getOrigin().getY(), world_tf().getOrigin().getZ());
+    ROS_INFO("=> Debug: orientation('%f', '%f', '%f', '%f')", world_tf().getRotation().getX(), world_tf().getRotation().getY(), world_tf().getRotation().getZ(), world_tf().getRotation().getW());
+}
+
+void Log_decorator::update(tf2::Transform& tf) {
+    input_filter();
+    Abstract_robot_element_decorator::update(tf);
+    output_filter();
+}
+
+void Log_decorator::output_filter() {
+    ROS_INFO("--- Debug: %s --- State: POST UPDATE", next_->name().c_str());
+    ROS_INFO("=> Debug: pos('%f', '%f', '%f')", world_tf().getOrigin().getX(), world_tf().getOrigin().getY(), world_tf().getOrigin().getZ());
+    ROS_INFO("=> Debug: orientation('%f', '%f', '%f', '%f')", world_tf().getRotation().getX(), world_tf().getRotation().getY(), world_tf().getRotation().getZ(), world_tf().getRotation().getW());
+}
+
diff --git a/src/robot_element/observers/field.cpp b/src/robot_element/observers/field.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..3937bbba0efdea924044a850a5df9b3d1cd533f5
--- /dev/null
+++ b/src/robot_element/observers/field.cpp
@@ -0,0 +1,4 @@
+#include "robot_element/observers/field.h"
+
+Field::Field(tf2::Transform tf) 
+: Abstract_robot_element(tf, "", tf2::Vector3(0,0,0)){}
\ No newline at end of file
diff --git a/src/robot_element/observers/moveit_panel.cpp b/src/robot_element/observers/moveit_panel.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c54f839f9a630a2da5b5f93373976c0338dc9cb1
--- /dev/null
+++ b/src/robot_element/observers/moveit_panel.cpp
@@ -0,0 +1,67 @@
+#include "robot_element/observers/moveit_panel.h"
+
+
+Moveit_panel::Moveit_panel(std::string name, tf2::Transform tf, tf2::Vector3 size) 
+: Panel(name, tf, size)
+{
+    /*
+    marker_.id = name_;
+    marker_.header.frame_id = "world";
+
+    marker_.primitives.resize(1);
+    marker_.primitives[0].type = marker_.primitives[0].BOX;
+    marker_.primitives[0].dimensions.resize(3);
+    marker_.primitives[0].dimensions[0] = size_.getX();
+    marker_.primitives[0].dimensions[1] = size_.getY();
+    marker_.primitives[0].dimensions[2] = size_.getZ();
+
+
+    marker_.primitive_poses.resize(1);
+    marker_.primitive_poses[0].position.x = world_tf_.getOrigin().getX();
+    marker_.primitive_poses[0].position.y = world_tf_.getOrigin().getY();
+    marker_.primitive_poses[0].position.z = world_tf_.getOrigin().getZ() - size_.getZ()/2;
+    marker_.primitive_poses[0].orientation.x = world_tf_.getRotation().getX();
+    marker_.primitive_poses[0].orientation.y = world_tf_.getRotation().getY();
+    marker_.primitive_poses[0].orientation.z = world_tf_.getRotation().getZ();
+    marker_.primitive_poses[0].orientation.w = world_tf_.getRotation().getW();
+
+    marker_.operation = marker_.ADD;
+    */
+};
+
+void Moveit_panel::update(tf2::Transform& tf){
+    Panel::update(tf);
+
+    marker_.id = name_;
+    marker_.header.frame_id = "world";
+
+    /*
+    marker_.pose.position.x = world_tf_.getOrigin().getX();
+    marker_.pose.position.y = world_tf_.getOrigin().getY();
+    marker_.pose.position.x = world_tf_.getOrigin().getZ() - size_.getZ()/2;;
+
+    marker_.pose.orientation.x = world_tf_.getRotation().getX();
+    marker_.pose.orientation.x = world_tf_.getRotation().getY();
+    marker_.pose.orientation.x = world_tf_.getRotation().getZ();
+    marker_.pose.orientation.x = world_tf_.getRotation().getW();
+    */
+
+    marker_.primitives.resize(1);
+    marker_.primitives[0].type = marker_.primitives[0].BOX;
+    marker_.primitives[0].dimensions.resize(3);
+    marker_.primitives[0].dimensions[0] = size_.getX();
+    marker_.primitives[0].dimensions[1] = size_.getY();
+    marker_.primitives[0].dimensions[2] = size_.getZ();
+
+    marker_.primitive_poses.resize(1);
+    marker_.primitive_poses[0].position.x = world_tf_.getOrigin().getX();
+    marker_.primitive_poses[0].position.y = world_tf_.getOrigin().getY();
+    marker_.primitive_poses[0].position.z = world_tf_.getOrigin().getZ() - size_.getZ()/2;
+    marker_.primitive_poses[0].orientation.x = world_tf_.getRotation().getX();
+    marker_.primitive_poses[0].orientation.y = world_tf_.getRotation().getY();
+    marker_.primitive_poses[0].orientation.z = world_tf_.getRotation().getZ();
+    marker_.primitive_poses[0].orientation.w = world_tf_.getRotation().getW();
+
+    marker_.operation = marker_.ADD;
+}
+
diff --git a/src/robot_element/observers/panel.cpp b/src/robot_element/observers/panel.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..2f8b8f447a2ad54914d3cf2200bb6e227de558b5
--- /dev/null
+++ b/src/robot_element/observers/panel.cpp
@@ -0,0 +1,10 @@
+#include "robot_element/observers/panel.h"
+
+Panel::Panel(std::string name, tf2::Transform tf, tf2::Vector3 size) 
+: Abstract_robot_element(tf, name, size)
+{ 
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()/2.f, size_.getY()/2.f,0))); //++
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()/2.f, size_.getY()/-2.f,0))); //+-
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()/-2.f, size_.getY()/-2.f,0))); //--
+    bounds_.push_back(tf2::Transform(tf2::Quaternion(0,0,0,1), tf2::Vector3(size_.getX()/-2.f, size_.getY()/2.f,0))); //-+
+}
\ No newline at end of file
diff --git a/src/robot_element/observers/rviz_panel.cpp b/src/robot_element/observers/rviz_panel.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..58afd831e982b67e8d0c33a09655295e7ee7d255
--- /dev/null
+++ b/src/robot_element/observers/rviz_panel.cpp
@@ -0,0 +1,52 @@
+#include "robot_element/observers/rviz_panel.h"
+
+
+Rviz_panel::Rviz_panel(std::string name, tf2::Transform tf, tf2::Vector3 size) 
+: Panel(name, tf, size)
+{
+    marker_.header.frame_id = "map";
+    marker_.header.stamp = ros::Time();
+    marker_.ns = name_;
+    marker_.id = 1;
+    marker_.type = visualization_msgs::Marker::CUBE;
+    marker_.action = visualization_msgs::Marker::ADD;
+    marker_.pose.position.x = 0;
+    marker_.pose.position.y = 0;
+    marker_.pose.position.z = 0;
+    marker_.pose.orientation.x = 0;
+    marker_.pose.orientation.y = 0;
+    marker_.pose.orientation.z = 0;
+    marker_.pose.orientation.w = 1;
+    marker_.scale.x = size_.getX();
+    marker_.scale.y = size_.getY();
+    marker_.scale.z = size_.getZ();
+    marker_.color.r = 1.0;
+    marker_.color.g = 1.0;
+    marker_.color.b = 1.0;
+    marker_.color.a = 1.0; 
+};
+
+void Rviz_panel::update(tf2::Transform& tf){
+    Panel::update(tf);
+
+    marker_.header.frame_id = "map";
+    marker_.header.stamp = ros::Time();
+    marker_.ns = name_;
+    marker_.id = 1;
+    marker_.type = visualization_msgs::Marker::CUBE;
+    marker_.action = visualization_msgs::Marker::MODIFY;
+    marker_.pose.position.x = world_tf_.getOrigin().getX();
+    marker_.pose.position.y = world_tf_.getOrigin().getY();
+    marker_.pose.position.z = world_tf_.getOrigin().getZ();
+    marker_.pose.orientation.x = world_tf_.getRotation().getX();
+    marker_.pose.orientation.y = world_tf_.getRotation().getY();
+    marker_.pose.orientation.z = world_tf_.getRotation().getZ();
+    marker_.pose.orientation.w = world_tf_.getRotation().getW();
+    marker_.scale.x = size_.getX();
+    marker_.scale.y = size_.getY();
+    marker_.scale.z = size_.getZ();
+    marker_.color.r = 1.0;
+    marker_.color.g = 1.0;
+    marker_.color.b = 1.0;
+    marker_.color.a = 1.0; 
+}
\ No newline at end of file