Tentativa de correção de erros.
authorGabriel Schmitz <gschmitz@ece.ufrgs.br>
Fri, 11 Jan 2019 19:04:05 +0000 (17:04 -0200)
committerGabriel Schmitz <gschmitz@ece.ufrgs.br>
Fri, 11 Jan 2019 19:04:05 +0000 (17:04 -0200)
miitzhand_bringup/CMakeLists.txt [new file with mode: 0644]
miitzhand_bringup/config/miitzhand_joints.yaml [new file with mode: 0644]
miitzhand_bringup/launch/gazebo.launch [new file with mode: 0644]
miitzhand_bringup/package.xml [new file with mode: 0644]
miitzhand_bringup/scripts/set_home.sh [new file with mode: 0644]
miitzhand_description/launch/display.launch [new file with mode: 0755]
miitzhand_description/launch/urdf.launch [new file with mode: 0644]
miitzhand_description/rviz/miitzhand.rviz [new file with mode: 0644]

diff --git a/miitzhand_bringup/CMakeLists.txt b/miitzhand_bringup/CMakeLists.txt
new file mode 100644 (file)
index 0000000..657fe89
--- /dev/null
@@ -0,0 +1,205 @@
+cmake_minimum_required(VERSION 2.8.3)\r
+project(miitzhand_bringup)\r
+\r
+## Compile as C++11, supported in ROS Kinetic and newer\r
+# add_compile_options(-std=c++11)\r
+\r
+## Find catkin macros and libraries\r
+## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)\r
+## is used, also find other catkin packages\r
+find_package(catkin REQUIRED COMPONENTS\r
+  roscpp\r
+  rospy\r
+)\r
+find_package(catkin REQUIRED COMPONENTS\r
+  controller_interface\r
+  effort_controllers\r
+  urdf\r
+)\r
+find_package(cmake_modules REQUIRED)\r
+## System dependencies are found with CMake's conventions\r
+# find_package(Boost REQUIRED COMPONENTS system)\r
+\r
+\r
+## Uncomment this if the package has a setup.py. This macro ensures\r
+## modules and global scripts declared therein get installed\r
+## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html\r
+# catkin_python_setup()\r
+\r
+################################################\r
+## Declare ROS messages, services and actions ##\r
+################################################\r
+\r
+## To declare and build messages, services or actions from within this\r
+## package, follow these steps:\r
+## * Let MSG_DEP_SET be the set of packages whose message types you use in\r
+##   your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).\r
+## * In the file package.xml:\r
+##   * add a build_depend tag for "message_generation"\r
+##   * add a build_depend and a run_depend tag for each package in MSG_DEP_SET\r
+##   * If MSG_DEP_SET isn't empty the following dependency has been pulled in\r
+##     but can be declared for certainty nonetheless:\r
+##     * add a run_depend tag for "message_runtime"\r
+## * In this file (CMakeLists.txt):\r
+##   * add "message_generation" and every package in MSG_DEP_SET to\r
+##     find_package(catkin REQUIRED COMPONENTS ...)\r
+##   * add "message_runtime" and every package in MSG_DEP_SET to\r
+##     catkin_package(CATKIN_DEPENDS ...)\r
+##   * uncomment the add_*_files sections below as needed\r
+##     and list every .msg/.srv/.action file to be processed\r
+##   * uncomment the generate_messages entry below\r
+##   * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)\r
+\r
+## Generate messages in the 'msg' folder\r
+# add_message_files(\r
+#   FILES\r
+#   Message1.msg\r
+#   Message2.msg\r
+# )\r
+\r
+## Generate services in the 'srv' folder\r
+# add_service_files(\r
+#   FILES\r
+#   Service1.srv\r
+#   Service2.srv\r
+# )\r
+\r
+## Generate actions in the 'action' folder\r
+# add_action_files(\r
+#   FILES\r
+#   Action1.action\r
+#   Action2.action\r
+# )\r
+\r
+## Generate added messages and services with any dependencies listed here\r
+# generate_messages(\r
+#   DEPENDENCIES\r
+#   std_msgs  # Or other packages containing msgs\r
+# )\r
+\r
+################################################\r
+## Declare ROS dynamic reconfigure parameters ##\r
+################################################\r
+\r
+## To declare and build dynamic reconfigure parameters within this\r
+## package, follow these steps:\r
+## * In the file package.xml:\r
+##   * add a build_depend and a run_depend tag for "dynamic_reconfigure"\r
+## * In this file (CMakeLists.txt):\r
+##   * add "dynamic_reconfigure" to\r
+##     find_package(catkin REQUIRED COMPONENTS ...)\r
+##   * uncomment the "generate_dynamic_reconfigure_options" section below\r
+##     and list every .cfg file to be processed\r
+\r
+## Generate dynamic reconfigure parameters in the 'cfg' folder\r
+# generate_dynamic_reconfigure_options(\r
+#   cfg/DynReconf1.cfg\r
+#   cfg/DynReconf2.cfg\r
+# )\r
+\r
+###################################\r
+## catkin specific configuration ##\r
+###################################\r
+## The catkin_package macro generates cmake config files for your package\r
+## Declare things to be passed to dependent projects\r
+## INCLUDE_DIRS: uncomment this if you package contains header files\r
+## LIBRARIES: libraries you create in this project that dependent projects also need\r
+## CATKIN_DEPENDS: catkin_packages dependent projects also need\r
+## DEPENDS: system dependencies of this project that dependent projects also need\r
+catkin_package(\r
+   LIBRARIES ${PROJECT_NAME}\r
+   CATKIN_DEPENDS controller_interface control_msgs urdf\r
+#  INCLUDE_DIRS include\r
+#  LIBRARIES gabrielquanser_controllers\r
+#  CATKIN_DEPENDS roscpp rospy\r
+#  DEPENDS system_lib\r
+)\r
+\r
+###########\r
+## Build ##\r
+###########\r
+\r
+## Specify additional locations of header files\r
+## Your package locations should be listed before other locations\r
+include_directories(\r
+# include\r
+  ${catkin_INCLUDE_DIRS}\r
+)\r
+\r
+## Declare a C++ library\r
+# add_library(${PROJECT_NAME}\r
+#   src/${PROJECT_NAME}/gabrielquanser_controllers.cpp\r
+# )\r
+\r
+## Add cmake target dependencies of the library\r
+## as an example, code may need to be generated before libraries\r
+## either from message generation or dynamic reconfigure\r
+# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})\r
+\r
+## Declare a C++ executable\r
+## With catkin_make all packages are built within a single CMake context\r
+## The recommended prefix ensures that target names across packages don't collide\r
+# add_executable(${PROJECT_NAME}_node src/gabrielquanser_controllers_node.cpp)\r
+\r
+## Rename C++ executable without prefix\r
+## The above recommended prefix causes long target names, the following renames the\r
+## target back to the shorter version for ease of user use\r
+## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node"\r
+# set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "")\r
+\r
+## Add cmake target dependencies of the executable\r
+## same as for the library above\r
+# add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})\r
+\r
+## Specify libraries to link a library or executable target against\r
+ #target_link_libraries(${PROJECT_NAME}_node\r
+  # ${catkin_LIBRARIES}\r
+ #)\r
+\r
+#############\r
+## Install ##\r
+#############\r
+\r
+# all install targets should use catkin DESTINATION variables\r
+# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html\r
+\r
+## Mark executable scripts (Python etc.) for installation\r
+## in contrast to setup.py, you can choose the destination\r
+# install(PROGRAMS\r
+#   scripts/my_python_script\r
+#   DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}\r
+# )\r
+\r
+## Mark executables and/or libraries for installation\r
+#install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node\r
+ #  ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}\r
+  # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}\r
+  # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}\r
+ #)\r
+\r
+## Mark cpp header files for installation\r
+ #install(DIRECTORY include/${PROJECT_NAME}/\r
+ #  DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}\r
+#   FILES_MATCHING PATTERN "*.h"\r
+#   PATTERN ".svn" EXCLUDE\r
+ #)\r
+\r
+## Mark other files for installation (e.g. launch and bag files, etc.)\r
+# install(FILES\r
+#   # myfile1\r
+#   # myfile2\r
+#   DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}\r
+# )\r
+\r
+#############\r
+## Testing ##\r
+#############\r
+\r
+## Add gtest based cpp test target and link libraries\r
+# catkin_add_gtest(${PROJECT_NAME}-test test/test_gabrielquanser_controllers.cpp)\r
+# if(TARGET ${PROJECT_NAME}-test)\r
+#   target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME})\r
+# endif()\r
+\r
+## Add folders to be run by python nosetests\r
+# catkin_add_nosetests(test)\r
diff --git a/miitzhand_bringup/config/miitzhand_joints.yaml b/miitzhand_bringup/config/miitzhand_joints.yaml
new file mode 100644 (file)
index 0000000..6da2cb2
--- /dev/null
@@ -0,0 +1,80 @@
+miitzhand: \r
+\r
+    joint_state_controller:\r
+        type: joint_state_controller/JointStateController\r
+        publish_rate: 100\r
+\r
+    Pol1_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Pol_J1 \r
+        pid: {p: 200, i: 50, d: 10}\r
+\r
+    Pol2_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Pol_J2\r
+        pid: {p: 0.7, i: 1, d: 0.01}\r
+\r
+    Pol3_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Pol_J3\r
+        pid: {p: 0.1, i: 0.001, d: 0.0008}\r
+\r
+    Ind1_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ind_J1 \r
+        pid: {p: 2, i: 0, d: 0}\r
+\r
+    Ind2_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ind_J2\r
+        pid: {p: 2, i: 0, d: 0}\r
+\r
+    Ind3_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ind_J3\r
+        pid: {p: 1, i: 0, d: 0}\r
+\r
+    Med1_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Med_J1 \r
+        pid: {p: 2, i: 1, d: 0}\r
+\r
+    Med2_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Med_J2\r
+        pid: {p: 1, i: 1, d: 0}\r
+\r
+    Med3_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Med_J3\r
+        pid: {p: 1, i: 1, d: 0}\r
+\r
+    Ane1_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ane_J1 \r
+        pid: {p: 2, i: 1, d: 0}\r
+\r
+    Ane2_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ane_J2\r
+        pid: {p: 1, i: 1, d: 0}\r
+\r
+    Ane3_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Ane_J3\r
+        pid: {p: 1, i: 1, d: 0}\r
+    \r
+    Min1_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Min_J1 \r
+        pid: {p: 2, i: 1, d: 0}\r
+\r
+    Min2_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Min_J2\r
+        pid: {p: 1, i: 1, d: 0}\r
+\r
+    Min3_position_controller:\r
+        type: effort_controllers/JointPositionController\r
+        joint: Min_J3\r
+        pid: {p: 1, i: 1, d: 0}\r
diff --git a/miitzhand_bringup/launch/gazebo.launch b/miitzhand_bringup/launch/gazebo.launch
new file mode 100644 (file)
index 0000000..86ee70e
--- /dev/null
@@ -0,0 +1,109 @@
+<launch>
+
+       <arg
+               name="debug"
+               default="false"
+       />
+       <arg
+               name="gui"
+               default="true"
+       />
+       <arg
+               name="headless"
+               default="false"
+       />
+       <arg
+               name="paused"
+               default="true" 
+       />
+       <arg
+               name="use_sim_time"
+               default="true"
+       />
+       <include file="$(find gazebo_ros)/launch/empty_world.launch">
+
+               <arg
+                       name="debug"
+                       value="$(arg debug)"
+               />
+               <arg
+                       name="gui"
+                       value="$(arg gui)"
+               />
+               <arg
+                       name="paused"
+                       value="$(arg paused)"
+               />
+               <arg
+                       name="use_sim_time"
+                       value="$(arg use_sim_time)"
+               />
+               <arg
+                       name="headless"
+                       value="$(arg headless)"
+               />
+               <arg
+                       name="world_name"
+                       value="worlds/empty.world"
+               />
+
+       </include>
+         
+        <!-- Robot model -->
+       <param name="robot_description" textfile="$(find miitzhand_description)/urdf/miitzhand.urdf" />
+        
+        <!-- Spawn the robot model -->
+        <node name="miitzhand_spawner" pkg="gazebo_ros" type="spawn_model" output="screen" 
+              args="-urdf -param robot_description -model miitzhand" />
+      
+        <!-- Load controllers -->
+        <rosparam command="load" file="$(find miitzhand_bringup)/config/miitzhand_joints.yaml" />
+        
+        <!-- Controllers -->
+        <node name="controller_spawner" pkg="controller_manager" type="spawner"
+            respawn="false" output="screen" ns="/miitzhand"
+            args="
+            joint_state_controller
+            Pol1_position_controller
+            Pol2_position_controller
+            Pol3_position_controller
+            Ind1_position_controller
+            Ind2_position_controller
+            Ind3_position_controller
+            Med1_position_controller
+            Med2_position_controller
+            Med3_position_controller
+            Ane1_position_controller
+            Ane2_position_controller
+            Ane3_position_controller
+            Min1_position_controller
+            Min2_position_controller
+            Min3_position_controller
+            --timeout 60">
+        </node>
+
+       <!--<node
+               name="robot_state_publisher"
+               pkg="robot_state_publisher"
+               type="robot_state_publisher"
+               respawn="false"
+               output="screen"
+       >
+
+               <param
+                       name="publish_frequency"
+                       type="double"
+                       value="100.0"
+               />
+               <remap
+                       from="/joint_states"
+                       to="/dedo/joint_states"
+               />
+
+       </node>-->
+       
+        <!-- rqt -->
+        <node name="rqt_reconfigure" pkg="rqt_reconfigure" type="rqt_reconfigure" />
+        <node name="rqt_publisher" pkg="rqt_publisher" type="rqt_publisher" />
+        
+</launch>
diff --git a/miitzhand_bringup/package.xml b/miitzhand_bringup/package.xml
new file mode 100644 (file)
index 0000000..9793a8f
--- /dev/null
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>\r
+<package>\r
+  <name>miitzhand_bringup</name>\r
+  <version>0.0.0</version>\r
+  <description>The  package</description>\r
+\r
+  <!-- One maintainer tag required, multiple allowed, one person per tag -->\r
+  <!-- Example:  -->\r
+  <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->\r
+  <maintainer email="gschmitz@ece.ufrgs.br">gabriel</maintainer>\r
+\r
+\r
+  <!-- One license tag required, multiple allowed, one license per tag -->\r
+  <!-- Commonly used license strings: -->\r
+  <!--   BSD, MIT, Boost Software License, GPLv2, GPLv3, LGPLv2.1, LGPLv3 -->\r
+  <license>MIT</license>\r
+\r
+  <!--   <test_depend>gtest</test_depend> -->\r
+   <buildtool_depend>catkin</buildtool_depend>\r
+\r
+  <build_depend>controller_interface</build_depend>\r
+  <build_depend>effort_controllers</build_depend>\r
+  <build_depend>roscpp</build_depend>\r
+  <build_depend>rospy</build_depend>\r
+  <build_depend>control_msgs</build_depend>\r
+  <build_depend>urdf</build_depend>\r
+  <build_depend>cmake_modules</build_depend>\r
+\r
+  <run_depend>cmake_modules</run_depend>\r
+  <run_depend>roscpp</run_depend>\r
+  <run_depend>rospy</run_depend>\r
+  <run_depend>urdf</run_depend>\r
+  <run_depend>control_msgs</run_depend>\r
+  <run_depend>controller_interface</run_depend>\r
+  <run_depend>controller_manager</run_depend>\r
+  <run_depend>effort_controllers</run_depend>\r
+  <run_depend>joint_state_controller</run_depend>\r
+  <run_depend>joint_position_controller</run_depend>\r
+\r
+\r
+  <!-- The export tag contains other, unspecified, tags -->\r
+  <export>\r
+    <!-- Other tools can request additional information be placed here -->\r
+\r
+  </export>\r
+</package>\r
diff --git a/miitzhand_bringup/scripts/set_home.sh b/miitzhand_bringup/scripts/set_home.sh
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/miitzhand_description/launch/display.launch b/miitzhand_description/launch/display.launch
new file mode 100755 (executable)
index 0000000..97e795d
--- /dev/null
@@ -0,0 +1,8 @@
+<launch>\r
+        <arg name="use_gui" default="true" />\r
+        <include file="$(find miitzhand_description)/launch/urdf.launch" />\r
+       <node pkg="tf2_ros" type="static_transform_publisher" name="montagem_publisher" args="0 0 0 0 0 0 1 map origin_link" />\r
+       <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" args="_use_gui:=$(arg use_gui)" />\r
+        <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" />\r
+        <node name="rviz" pkg="rviz" type="rviz" args="-d $(find miitzhand_description)/rviz/miitzhand.rviz" required="true" />\r
+</launch>\r
diff --git a/miitzhand_description/launch/urdf.launch b/miitzhand_description/launch/urdf.launch
new file mode 100644 (file)
index 0000000..7a3ab36
--- /dev/null
@@ -0,0 +1,3 @@
+<launch>
+       <param name="robot_description" textfile="$(find miitzhand_description)/urdf/miitzhand.urdf" />
+</launch>
diff --git a/miitzhand_description/rviz/miitzhand.rviz b/miitzhand_description/rviz/miitzhand.rviz
new file mode 100644 (file)
index 0000000..3ea4af4
--- /dev/null
@@ -0,0 +1,158 @@
+Panels:
+  - Class: rviz/Displays
+    Help Height: 78
+    Name: Displays
+    Property Tree Widget:
+      Expanded:
+        - /Global Options1
+        - /Status1
+      Splitter Ratio: 0.5
+    Tree Height: 559
+  - Class: rviz/Selection
+    Name: Selection
+  - Class: rviz/Tool Properties
+    Expanded:
+      - /2D Pose Estimate1
+      - /2D Nav Goal1
+      - /Publish Point1
+    Name: Tool Properties
+    Splitter Ratio: 0.588679
+  - Class: rviz/Views
+    Expanded:
+      - /Current View1
+    Name: Views
+    Splitter Ratio: 0.5
+  - Class: rviz/Time
+    Experimental: false
+    Name: Time
+    SyncMode: 0
+    SyncSource: ""
+Visualization Manager:
+  Class: ""
+  Displays:
+    - Alpha: 0.5
+      Cell Size: 1
+      Class: rviz/Grid
+      Color: 160; 160; 164
+      Enabled: true
+      Line Style:
+        Line Width: 0.03
+        Value: Lines
+      Name: Grid
+      Normal Cell Count: 0
+      Offset:
+        X: 0
+        Y: 0
+        Z: 0
+      Plane: XY
+      Plane Cell Count: 10
+      Reference Frame: <Fixed Frame>
+      Value: true
+    - Alpha: 1
+      Class: rviz/RobotModel
+      Collision Enabled: false
+      Enabled: true
+      Links:
+        All Links Enabled: true
+        Expand Joint Details: false
+        Expand Link Details: false
+        Expand Tree: false
+        Link Tree Style: Links in Alphabetic Order
+        base_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        elbow_active_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        elbow_passive_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        end_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+        origin_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+        shoulder_active_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+        shoulder_passive_link:
+          Alpha: 1
+          Show Axes: false
+          Show Trail: false
+          Value: true
+      Name: RobotModel
+      Robot Description: robot_description
+      TF Prefix: ""
+      Update Interval: 0
+      Value: true
+      Visual Enabled: true
+  Enabled: true
+  Global Options:
+    Background Color: 48; 48; 48
+    Fixed Frame: map
+    Frame Rate: 30
+  Name: root
+  Tools:
+    - Class: rviz/Interact
+      Hide Inactive Objects: true
+    - Class: rviz/MoveCamera
+    - Class: rviz/Select
+    - Class: rviz/FocusCamera
+    - Class: rviz/Measure
+    - Class: rviz/SetInitialPose
+      Topic: /initialpose
+    - Class: rviz/SetGoal
+      Topic: /move_base_simple/goal
+    - Class: rviz/PublishPoint
+      Single click: true
+      Topic: /clicked_point
+  Value: true
+  Views:
+    Current:
+      Class: rviz/Orbit
+      Distance: 1.74931
+      Enable Stereo Rendering:
+        Stereo Eye Separation: 0.06
+        Stereo Focal Distance: 1
+        Swap Stereo Eyes: false
+        Value: false
+      Focal Point:
+        X: 0.170924
+        Y: -0.214539
+        Z: 0.105634
+      Name: Current View
+      Near Clip Distance: 0.01
+      Pitch: 0.505398
+      Target Frame: <Fixed Frame>
+      Value: Orbit (rviz)
+      Yaw: 4.70358
+    Saved: ~
+Window Geometry:
+  Displays:
+    collapsed: false
+  Height: 846
+  Hide Left Dock: false
+  Hide Right Dock: false
+  QMainWindow State: 000000ff00000000fd00000004000000000000013c000002bafc0200000008fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005300fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c0061007900730100000036000002ba000000b700fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000010f000002bafc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a005600690065007700730100000036000002ba0000009b00fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000004b00000003efc0100000002fb0000000800540069006d00650100000000000004b00000024700fffffffb0000000800540069006d0065010000000000000450000000000000000000000259000002ba00000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
+  Selection:
+    collapsed: false
+  Time:
+    collapsed: false
+  Tool Properties:
+    collapsed: false
+  Views:
+    collapsed: false
+  Width: 1200
+  X: 336
+  Y: 94