diff --git a/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/PickerControllerConstants_for_Qt_compile.h b/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/PickerControllerConstants_for_Qt_compile.h
new file mode 100644
index 0000000000000000000000000000000000000000..3b1c36cda8a07f014fc539c43100b8a3f4a936bb
--- /dev/null
+++ b/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/PickerControllerConstants_for_Qt_compile.h
@@ -0,0 +1,56 @@
+//    Copyright (C) 2017, ETH Zurich, D-ITET, Paul Beuchat
+//
+//    This file is part of D-FaLL-System.
+//    
+//    D-FaLL-System 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 3 of the License, or
+//    (at your option) any later version.
+//    
+//    D-FaLL-System 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 D-FaLL-System.  If not, see <http://www.gnu.org/licenses/>.
+//    
+//
+//    ----------------------------------------------------------------------------------
+//    DDDD        FFFFF        L     L           SSSS  Y   Y   SSSS  TTTTT  EEEEE  M   M
+//    D   D       F      aaa   L     L          S       Y Y   S        T    E      MM MM
+//    D   D  ---  FFFF  a   a  L     L     ---   SSS     Y     SSS     T    EEE    M M M
+//    D   D       F     a  aa  L     L              S    Y        S    T    E      M   M
+//    DDDD        F      aa a  LLLL  LLLL       SSSS     Y    SSSS     T    EEEEE  M   M
+//
+//
+//    DESCRIPTION:
+//    Constants that are used across the Picker Controler Service and GUI
+//
+//    ----------------------------------------------------------------------------------
+
+
+
+
+
+// TO IDENITFY THE STATE OF THE PICKER
+
+#define PICKER_STATE_UNKNOWN      -1
+#define PICKER_STATE_STANDBY       0
+#define PICKER_STATE_GOTO_START    1
+#define PICKER_STATE_ATTACH        2
+#define PICKER_STATE_LIFT_UP       3
+#define PICKER_STATE_GOTO_END      4
+#define PICKER_STATE_PUT_DOWN      5
+#define PICKER_STATE_SQUAT         6
+#define PICKER_STATE_JUMP          7
+
+
+
+// DEFAULT {x,y,z,yaw,mass}
+
+#define PICKER_DEFAULT_X               0
+#define PICKER_DEFAULT_Y               0
+#define PICKER_DEFAULT_Z               0.4
+#define PICKER_DEFAULT_YAW_DEGREES     0
+#define PICKER_DEFAULT_MASS_GRAMS     30
\ No newline at end of file
diff --git a/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/pickercontrollertab.h b/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/pickercontrollertab.h
index 0e428a13ebfb6c0c37541ecf33f7888e95119c27..6247cc79d95389b2300f1390ce24f972124e1f2e 100644
--- a/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/pickercontrollertab.h
+++ b/pps_ws/src/d_fall_pps/GUI_Qt/flyingAgentGUI/include/pickercontrollertab.h
@@ -15,21 +15,21 @@
 #define DEFAULT_INCREMENT_ANGLE_DEGREES    5
 #define DEFAULT_INCREMENT_MASS_GRAMS       0.5
 
-#define PICKER_STATE_UNKNOWN      -1
-#define PICKER_STATE_STANDBY       0
-#define PICKER_STATE_GOTO_START    1
-#define PICKER_STATE_ATTACH        2
-#define PICKER_STATE_LIFT_UP       3
-#define PICKER_STATE_GOTO_END      4
-#define PICKER_STATE_PUT_DOWN      5
-#define PICKER_STATE_SQUAT         6
-#define PICKER_STATE_JUMP          7
-
-#define PICKER_DEFAULT_X               0
-#define PICKER_DEFAULT_Y               0
-#define PICKER_DEFAULT_Z               0.4
-#define PICKER_DEFAULT_YAW_DEGREES     0
-#define PICKER_DEFAULT_MASS_GRAMS     30
+// #define PICKER_STATE_UNKNOWN      -1
+// #define PICKER_STATE_STANDBY       0
+// #define PICKER_STATE_GOTO_START    1
+// #define PICKER_STATE_ATTACH        2
+// #define PICKER_STATE_LIFT_UP       3
+// #define PICKER_STATE_GOTO_END      4
+// #define PICKER_STATE_PUT_DOWN      5
+// #define PICKER_STATE_SQUAT         6
+// #define PICKER_STATE_JUMP          7
+
+// #define PICKER_DEFAULT_X               0
+// #define PICKER_DEFAULT_Y               0
+// #define PICKER_DEFAULT_Z               0.4
+// #define PICKER_DEFAULT_YAW_DEGREES     0
+// #define PICKER_DEFAULT_MASS_GRAMS     30
 
 #ifdef CATKIN_MAKE
 #include <ros/ros.h>
@@ -51,6 +51,7 @@
 
 // Include the shared definitions
 #include "nodes/Constants.h"
+#include "nodes/PickerControllerConstants.h"
 
 // SPECIFY THE PACKAGE NAMESPACE
 //using namespace d_fall_pps;
@@ -58,6 +59,7 @@
 #else
 // Include the shared definitions
 #include "include/Constants_for_Qt_compile.h"
+#include "include/PickerControllerConstants_for_Qt_compile.h"
 
 #endif
 
diff --git a/pps_ws/src/d_fall_pps/include/nodes/PickerControllerConstants.h b/pps_ws/src/d_fall_pps/include/nodes/PickerControllerConstants.h
new file mode 100644
index 0000000000000000000000000000000000000000..3b1c36cda8a07f014fc539c43100b8a3f4a936bb
--- /dev/null
+++ b/pps_ws/src/d_fall_pps/include/nodes/PickerControllerConstants.h
@@ -0,0 +1,56 @@
+//    Copyright (C) 2017, ETH Zurich, D-ITET, Paul Beuchat
+//
+//    This file is part of D-FaLL-System.
+//    
+//    D-FaLL-System 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 3 of the License, or
+//    (at your option) any later version.
+//    
+//    D-FaLL-System 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 D-FaLL-System.  If not, see <http://www.gnu.org/licenses/>.
+//    
+//
+//    ----------------------------------------------------------------------------------
+//    DDDD        FFFFF        L     L           SSSS  Y   Y   SSSS  TTTTT  EEEEE  M   M
+//    D   D       F      aaa   L     L          S       Y Y   S        T    E      MM MM
+//    D   D  ---  FFFF  a   a  L     L     ---   SSS     Y     SSS     T    EEE    M M M
+//    D   D       F     a  aa  L     L              S    Y        S    T    E      M   M
+//    DDDD        F      aa a  LLLL  LLLL       SSSS     Y    SSSS     T    EEEEE  M   M
+//
+//
+//    DESCRIPTION:
+//    Constants that are used across the Picker Controler Service and GUI
+//
+//    ----------------------------------------------------------------------------------
+
+
+
+
+
+// TO IDENITFY THE STATE OF THE PICKER
+
+#define PICKER_STATE_UNKNOWN      -1
+#define PICKER_STATE_STANDBY       0
+#define PICKER_STATE_GOTO_START    1
+#define PICKER_STATE_ATTACH        2
+#define PICKER_STATE_LIFT_UP       3
+#define PICKER_STATE_GOTO_END      4
+#define PICKER_STATE_PUT_DOWN      5
+#define PICKER_STATE_SQUAT         6
+#define PICKER_STATE_JUMP          7
+
+
+
+// DEFAULT {x,y,z,yaw,mass}
+
+#define PICKER_DEFAULT_X               0
+#define PICKER_DEFAULT_Y               0
+#define PICKER_DEFAULT_Z               0.4
+#define PICKER_DEFAULT_YAW_DEGREES     0
+#define PICKER_DEFAULT_MASS_GRAMS     30
\ No newline at end of file
diff --git a/pps_ws/src/d_fall_pps/include/nodes/PickerControllerService.h b/pps_ws/src/d_fall_pps/include/nodes/PickerControllerService.h
index 6964798373fa15505da00a26d9d0ba5ee951b2b3..e1cc4c15f4e0d60589407ffacaa5399e21e73b56 100644
--- a/pps_ws/src/d_fall_pps/include/nodes/PickerControllerService.h
+++ b/pps_ws/src/d_fall_pps/include/nodes/PickerControllerService.h
@@ -50,20 +50,47 @@
 #include "ros/ros.h"
 #include <ros/package.h>
 
-//the generated structs from the msg-files have to be included
+// Include the standard message types
+#include "std_msgs/Int32.h"
+#include "std_msgs/Float32.h"
+#include <std_msgs/String.h>
+
+// Include the DFALL message types
+#include "d_fall_pps/IntWithHeader.h"
+//#include "d_fall_pps/StringWithHeader.h"
+#include "d_fall_pps/SetpointWithHeader.h"
+//#include "d_fall_pps/CustomButtonWithHeader.h"
 #include "d_fall_pps/ViconData.h"
-#include "d_fall_pps/Setpoint.h"
-#include "d_fall_pps/SetpointV2.h"
-#include "d_fall_pps/ControlCommand.h"
+//#include "d_fall_pps/ControlCommand.h"
 #include "d_fall_pps/Controller.h"
 #include "d_fall_pps/DebugMsg.h"
-#include "d_fall_pps/CustomButton.h"
 
-// Include the Parameter Service shared definitions
+//the generated structs from the msg-files have to be included
+// #include "d_fall_pps/Setpoint.h"
+// #include "d_fall_pps/SetpointV2.h"
+// #include "d_fall_pps/ControlCommand.h"
+// #include "d_fall_pps/CustomButton.h"
+
+// Include the DFALL service types
+#include "d_fall_pps/LoadYamlFromFilename.h"
+#include "d_fall_pps/GetSetpointService.h"
+
+// Include the shared definitions
 #include "nodes/Constants.h"
+#include "nodes/PickerContorllerConstants.h"
 
-#include <std_msgs/Int32.h>
-#include <std_msgs/Float32.h>
+// Include other classes
+#include "classes/GetParamtersAndNamespaces.h"
+
+// Needed for having a ROS "bag" to store data for post-analysis
+//#include <rosbag/bag.h>
+
+
+
+
+
+// Namespacing the package
+using namespace d_fall_pps;
 
 
 
@@ -80,18 +107,18 @@
 // These constants are defined to make the code more readable and adaptable.
 
 // FOR WHICH BUTTON WAS PRESSED IN THE PICKER CONTOLLER
-#define PICKER_BUTTON_GOTOSTART     1
-#define PICKER_BUTTON_ATTACH        2
-#define PICKER_BUTTON_PICKUP        3
-#define PICKER_BUTTON_GOTOEND       4
-#define PICKER_BUTTON_PUTDOWN       5
-#define PICKER_BUTTON_SQUAT         6
-#define PICKER_BUTTON_JUMP          7
+// #define PICKER_BUTTON_GOTOSTART     1
+// #define PICKER_BUTTON_ATTACH        2
+// #define PICKER_BUTTON_PICKUP        3
+// #define PICKER_BUTTON_GOTOEND       4
+// #define PICKER_BUTTON_PUTDOWN       5
+// #define PICKER_BUTTON_SQUAT         6
+// #define PICKER_BUTTON_JUMP          7
 
-#define PICKER_BUTTON_1             11
-#define PICKER_BUTTON_2             12
-#define PICKER_BUTTON_3             13
-#define PICKER_BUTTON_4             14
+// #define PICKER_BUTTON_1             11
+// #define PICKER_BUTTON_2             12
+// #define PICKER_BUTTON_3             13
+// #define PICKER_BUTTON_4             14
 
 
 // These constants define the modes that can be used for controller the Crazyflie 2.0,
@@ -108,9 +135,9 @@
 //               command directly to each of the motors, and additionally request the
 //               body frame roll, pitch, and yaw angles from the PID attitude
 //               controllers implemented in the Crazyflie 2.0 firmware.
-#define CF_COMMAND_TYPE_MOTOR   6
-#define CF_COMMAND_TYPE_RATE    7
-#define CF_COMMAND_TYPE_ANGLE   8
+// #define CF_COMMAND_TYPE_MOTOR   6
+// #define CF_COMMAND_TYPE_RATE    7
+// #define CF_COMMAND_TYPE_ANGLE   8
 
 // These constants define the method used for estimating the Inertial
 // frame state.
@@ -130,13 +157,9 @@
 // ESTIMATOR_METHOD_QUADROTOR_MODEL_BASED
 //       Uses the model of the quad-rotor and the previous inputs
 //
-#define ESTIMATOR_METHOD_FINITE_DIFFERENCE          1
-#define ESTIMATOR_METHOD_POINT_MASS_PER_DIMENSION   2   // (DEFAULT)
-#define ESTIMATOR_METHOD_QUADROTOR_MODEL_BASED      3
-
-
-// Namespacing the package
-using namespace d_fall_pps;
+// #define ESTIMATOR_METHOD_FINITE_DIFFERENCE          1
+// #define ESTIMATOR_METHOD_POINT_MASS_PER_DIMENSION   2   // (DEFAULT)
+// #define ESTIMATOR_METHOD_QUADROTOR_MODEL_BASED      3
 
 
 
@@ -150,133 +173,128 @@ using namespace d_fall_pps;
 //      V    A   A  R   R  III  A   A  BBBB   LLLLL  EEEEE  SSSS
 //    ----------------------------------------------------------------------------------
 
+
+
+// ----------------------------------------
+// VARIABLES SPECIFIC TO THE PICKER SERVICE
+
 // Current time
 int m_time_ticks = 0;
 float m_time_seconds;
 
-// > Mass of the Crazyflie quad-rotor, in [grams]
-float m_mass_CF_grams;
-
-// > Mass of the letters to be lifted, in [grams]
-float m_mass_E_grams;
-float m_mass_T_grams;
-float m_mass_H_grams;
-
 // > Total mass of the Crazyflie plus whatever it is carrying, in [grams]
 float m_mass_total_grams;
 
-// Thickness of the object at pick-up and put-down, in [meters]
-// > This should also account for extra height due to 
-//   the surface where the object is
-float m_thickness_of_object_at_pickup;
-float m_thickness_of_object_at_putdown;
-
-// (x,y) coordinates of the pickup location
-std::vector<float> m_pickup_coordinates_xy(2);
-
-// (x,y) coordinates of the drop off location
-std::vector<float> m_dropoff_coordinates_xy_for_E(2);
-std::vector<float> m_dropoff_coordinates_xy_for_T(2);
-std::vector<float> m_dropoff_coordinates_xy_for_H(2);
+// The setpoint to be tracked, the ordering is (x,y,z,yaw),
+// with units [meters,meters,meters,radians]
+std::vector<float>  m_setpoint{0.0,0.0,0.4,0.0};
 
-// Length of the string from the Crazyflie
-// to the end of the Picker, in [meters]
-float m_picker_string_length;
-
-// > The setpoints for (x,y,z) position and yaw angle, in that order
-float m_setpoint[4] = {0.0,0.0,0.4,0.0};
-float m_setpoint_for_controller[4] = {0.0,0.0,0.4,0.0};
-
-// > Small adjustments to the x-y setpoint
-float m_xAdjustment = 0.0f;
-float m_yAdjustment = 0.0f;
+// The setpoint that is actually used by the controller, this
+// differs from the setpoint when smoothing is turned on
+std::vector<float> m_setpoint_for_controller[4] = {0.0,0.0,0.4,0.0};
 
 // Boolean for whether to limit rate of change of the setpoint
 bool m_shouldSmoothSetpointChanges = true;
 
 // Max setpoint change per second
-float m_max_setpoint_change_per_second_horizontal;
-float m_max_setpoint_change_per_second_vertical;
-float m_max_setpoint_change_per_second_yaw_degrees;
+float yaml_max_setpoint_change_per_second_horizontal;
+float yaml_max_setpoint_change_per_second_vertical;
+float yaml_max_setpoint_change_per_second_yaw_degrees;
 float m_max_setpoint_change_per_second_yaw_radians;
 
 
-// Frequency at which the controller is running
-float m_vicon_frequency;
 
 
 
+// ------------------------------------------------------
+// VARIABLES THAT ARE STANDARD FOR A "CONTROLLER SERVICE"
 
+// The ID of the agent that this node is monitoring
+int m_agentID;
 
-// THE FOLLOWING PARAMETERS ARE USED
-// FOR THE LOW-LEVEL CONTROLLER
+// The ID of the agent that can coordinate this node
+int m_coordID;
 
-// Frequency at which the controller is running
-float control_frequency;
+// NAMESPACES FOR THE PARAMETER SERVICES
+// > For the paramter service of this agent
+std::string m_namespace_to_own_agent_parameter_service;
+// > For the parameter service of the coordinator
+std::string m_namespace_to_coordinator_parameter_service;
+
+
+
+// VARIABLES FOR THE CONTOLLER
+
+// > the mass of the crazyflie, in [grams]
+float yaml_cf_mass_in_grams = 25.0;
+
+// > the coefficients of the 16-bit command to thrust conversion
+//std::vector<float> yaml_motorPoly(3);
+std::vector<float> yaml_motorPoly = {5.484560e-4, 1.032633e-6, 2.130295e-11};
+
+// > the frequency at which the controller is running
+float yaml_control_frequency = 200.0;
+
+// > the default setpoint, the ordering is (x,y,z,yaw),
+//   with units [meters,meters,meters,radians]
+std::vector<float> yaml_default_setpoint = {0.0,0.0,0.4,0.0};
+
+// The weight of the Crazyflie in Newtons, i.e., mg
+float m_cf_weight_in_newtons = 0.0;
 
-// > Coefficients of the 16-bit command to thrust conversion
-std::vector<float> motorPoly(3);
+// The location error of the Crazyflie at the "previous" time step
+float m_previous_stateErrorInertial[9];
 
 // The LQR Controller parameters for "CONTROLLER_MODE_LQR_RATE"
-std::vector<float> gainMatrixThrust_NineStateVector (9,0.0);
-std::vector<float> gainMatrixRollRate               (9,0.0);
-std::vector<float> gainMatrixPitchRate              (9,0.0);
-std::vector<float> gainMatrixYawRate                (9,0.0);
+std::vector<float> yaml_gainMatrixThrust_NineStateVector (9,0.0);
+std::vector<float> yaml_gainMatrixRollRate               (9,0.0);
+std::vector<float> yaml_gainMatrixPitchRate              (9,0.0);
+std::vector<float> yaml_gainMatrixYawRate                (9,0.0);
 
 // The 16-bit command limits
-float cmd_sixteenbit_min;
-float cmd_sixteenbit_max;
+float yaml_cmd_sixteenbit_min;
+float yaml_cmd_sixteenbit_max;
+
 
 
 // VARIABLES FOR THE ESTIMATOR
 
 // Frequency at which the controller is running
-float estimator_frequency;
+float yaml_estimator_frequency;
 
 // > A flag for which estimator to use:
-int estimator_method = ESTIMATOR_METHOD_FINITE_DIFFERENCE;
+int yaml_estimator_method = ESTIMATOR_METHOD_FINITE_DIFFERENCE;
 // > The current state interial estimate,
 //   for use by the controller
-float current_stateInertialEstimate[12];
+float m_current_stateInertialEstimate[12];
 
 // > The measurement of the Crazyflie at the "current" time step,
 //   to avoid confusion
-float current_xzy_rpy_measurement[6];
+float m_current_xzy_rpy_measurement[6];
 
 // > The measurement of the Crazyflie at the "previous" time step,
 //   used for computing finite difference velocities
-float previous_xzy_rpy_measurement[6];
+float m_previous_xzy_rpy_measurement[6];
 
 // > The full 12 state estimate maintained by the finite
 //   difference state estimator
-float stateInterialEstimate_viaFiniteDifference[12];
+float m_stateInterialEstimate_viaFiniteDifference[12];
 
 // > The full 12 state estimate maintained by the point mass
 //   kalman filter state estimator
-float stateInterialEstimate_viaPointMassKalmanFilter[12];
+float m_stateInterialEstimate_viaPointMassKalmanFilter[12];
 
 // THE POINT MASS KALMAN FILTER (PMKF) GAINS AND ERROR EVOLUATION
 // > For the (x,y,z) position
-std::vector<float> PMKF_Ahat_row1_for_positions (2,0.0);
-std::vector<float> PMKF_Ahat_row2_for_positions (2,0.0);
-std::vector<float> PMKF_Kinf_for_positions      (2,0.0);
+std::vector<float> yaml_PMKF_Ahat_row1_for_positions (2,0.0);
+std::vector<float> yaml_PMKF_Ahat_row2_for_positions (2,0.0);
+std::vector<float> yaml_PMKF_Kinf_for_positions      (2,0.0);
 // > For the (roll,pitch,yaw) angles
-std::vector<float> PMKF_Ahat_row1_for_angles    (2,0.0);
-std::vector<float> PMKF_Ahat_row2_for_angles    (2,0.0);
-std::vector<float> PMKF_Kinf_for_angles         (2,0.0);
-
-
-
-// VARIABLES FOR THE NAMESPACES FOR THE PARAMETER SERVICES
-// > For the paramter service of this agent
-std::string namespace_to_own_agent_parameter_service;
-// > For the parameter service of the coordinator
-std::string namespace_to_coordinator_parameter_service;
+std::vector<float> yaml_PMKF_Ahat_row1_for_angles    (2,0.0);
+std::vector<float> yaml_PMKF_Ahat_row2_for_angles    (2,0.0);
+std::vector<float> yaml_PMKF_Kinf_for_angles         (2,0.0);
 
 
-// ROS PUBLISHER FOR SENDING OUT THE DEBUG MESSAGES
-ros::Publisher debugPublisher;
-
 
 // VARIABLES RELATING TO PERFORMING THE CONVERSION INTO BODY FRAME
 
@@ -292,24 +310,181 @@ bool shouldPublishDebugMessage = false;
 // Boolean indiciating whether the debugging ROS_INFO_STREAM should be displayed or not
 bool shouldDisplayDebugInfo = false;
 
+// ROS Publisher for debugging variables
+ros::Publisher m_debugPublisher;
+
+
+// VARIABLES RELATING TO COMMUNICATING THE SETPOINT
+
+// ROS Publisher for inform the network about
+// changes to the setpoin
+ros::Publisher m_setpointChangedPublisher;
+
+
+
+
+
+
+// // Current time
+// int m_time_ticks = 0;
+// float m_time_seconds;
+
+// // > Mass of the Crazyflie quad-rotor, in [grams]
+// float m_mass_CF_grams;
+
+// // > Mass of the letters to be lifted, in [grams]
+// float m_mass_E_grams;
+// float m_mass_T_grams;
+// float m_mass_H_grams;
+
+// // > Total mass of the Crazyflie plus whatever it is carrying, in [grams]
+// float m_mass_total_grams;
+
+// // Thickness of the object at pick-up and put-down, in [meters]
+// // > This should also account for extra height due to 
+// //   the surface where the object is
+// float m_thickness_of_object_at_pickup;
+// float m_thickness_of_object_at_putdown;
+
+// // (x,y) coordinates of the pickup location
+// std::vector<float> m_pickup_coordinates_xy(2);
+
+// // (x,y) coordinates of the drop off location
+// std::vector<float> m_dropoff_coordinates_xy_for_E(2);
+// std::vector<float> m_dropoff_coordinates_xy_for_T(2);
+// std::vector<float> m_dropoff_coordinates_xy_for_H(2);
+
+// // Length of the string from the Crazyflie
+// // to the end of the Picker, in [meters]
+// float m_picker_string_length;
+
+// // > The setpoints for (x,y,z) position and yaw angle, in that order
+// float m_setpoint[4] = {0.0,0.0,0.4,0.0};
+// float m_setpoint_for_controller[4] = {0.0,0.0,0.4,0.0};
+
+// // > Small adjustments to the x-y setpoint
+// float m_xAdjustment = 0.0f;
+// float m_yAdjustment = 0.0f;
+
+// // Boolean for whether to limit rate of change of the setpoint
+// bool m_shouldSmoothSetpointChanges = true;
+
+// // Max setpoint change per second
+// float m_max_setpoint_change_per_second_horizontal;
+// float m_max_setpoint_change_per_second_vertical;
+// float m_max_setpoint_change_per_second_yaw_degrees;
+// float m_max_setpoint_change_per_second_yaw_radians;
+
+
+// // Frequency at which the controller is running
+// float m_vicon_frequency;
+
+
+
+
+
+// THE FOLLOWING PARAMETERS ARE USED
+// FOR THE LOW-LEVEL CONTROLLER
+
+// // Frequency at which the controller is running
+// float control_frequency;
+
+// // > Coefficients of the 16-bit command to thrust conversion
+// std::vector<float> motorPoly(3);
+
+// // The LQR Controller parameters for "CONTROLLER_MODE_LQR_RATE"
+// std::vector<float> gainMatrixThrust_NineStateVector (9,0.0);
+// std::vector<float> gainMatrixRollRate               (9,0.0);
+// std::vector<float> gainMatrixPitchRate              (9,0.0);
+// std::vector<float> gainMatrixYawRate                (9,0.0);
+
+// // The 16-bit command limits
+// float cmd_sixteenbit_min;
+// float cmd_sixteenbit_max;
+
+
+// // VARIABLES FOR THE ESTIMATOR
+
+// // Frequency at which the controller is running
+// float estimator_frequency;
+
+// // > A flag for which estimator to use:
+// int estimator_method = ESTIMATOR_METHOD_FINITE_DIFFERENCE;
+// // > The current state interial estimate,
+// //   for use by the controller
+// float current_stateInertialEstimate[12];
+
+// // > The measurement of the Crazyflie at the "current" time step,
+// //   to avoid confusion
+// float current_xzy_rpy_measurement[6];
+
+// // > The measurement of the Crazyflie at the "previous" time step,
+// //   used for computing finite difference velocities
+// float previous_xzy_rpy_measurement[6];
+
+// // > The full 12 state estimate maintained by the finite
+// //   difference state estimator
+// float stateInterialEstimate_viaFiniteDifference[12];
+
+// // > The full 12 state estimate maintained by the point mass
+// //   kalman filter state estimator
+// float stateInterialEstimate_viaPointMassKalmanFilter[12];
+
+// // THE POINT MASS KALMAN FILTER (PMKF) GAINS AND ERROR EVOLUATION
+// // > For the (x,y,z) position
+// std::vector<float> PMKF_Ahat_row1_for_positions (2,0.0);
+// std::vector<float> PMKF_Ahat_row2_for_positions (2,0.0);
+// std::vector<float> PMKF_Kinf_for_positions      (2,0.0);
+// // > For the (roll,pitch,yaw) angles
+// std::vector<float> PMKF_Ahat_row1_for_angles    (2,0.0);
+// std::vector<float> PMKF_Ahat_row2_for_angles    (2,0.0);
+// std::vector<float> PMKF_Kinf_for_angles         (2,0.0);
+
+
+
+// // VARIABLES FOR THE NAMESPACES FOR THE PARAMETER SERVICES
+// // > For the paramter service of this agent
+// std::string namespace_to_own_agent_parameter_service;
+// // > For the parameter service of the coordinator
+// std::string namespace_to_coordinator_parameter_service;
+
+
+// // ROS PUBLISHER FOR SENDING OUT THE DEBUG MESSAGES
+// ros::Publisher debugPublisher;
+
+
+// // VARIABLES RELATING TO PERFORMING THE CONVERSION INTO BODY FRAME
+
+// // Boolean whether to execute the convert into body frame function
+// bool shouldPerformConvertIntoBodyFrame = false;
+
+
+// // VARIABLES RELATING TO THE PUBLISHING OF A DEBUG MESSAGE
+
+// // Boolean indiciating whether the "Debug Message" of this agent should be published or not
+// bool shouldPublishDebugMessage = false;
+
+// // Boolean indiciating whether the debugging ROS_INFO_STREAM should be displayed or not
+// bool shouldDisplayDebugInfo = false;
+
 
-// VARIABLES RELATING TO PUBLISHING CURRENT POSITION AND FOLLOWING ANOTHER AGENT'S
-// POSITION
+// // VARIABLES RELATING TO PUBLISHING CURRENT POSITION AND FOLLOWING ANOTHER AGENT'S
+// // POSITION
 
-// The ID of this agent, i.e., the ID of this compute
-int my_agentID = 0;
+// // The ID of this agent, i.e., the ID of this compute
+// int my_agentID = 0;
 
-// Boolean indicating whether the (x,y,z,yaw) of this agent should be published or not
-// > The default behaviour is: do not publish,
-// > This varaible is changed based on parameters loaded from the YAML file
-bool shouldPublishCurrent_xyz_yaw = false;
+// // Boolean indicating whether the (x,y,z,yaw) of this agent should be published or not
+// // > The default behaviour is: do not publish,
+// // > This varaible is changed based on parameters loaded from the YAML file
+// bool shouldPublishCurrent_xyz_yaw = false;
 
 
-// ROS Publisher for my current (x,y,z,yaw) position
-ros::Publisher my_current_xyz_yaw_publisher;
+// // ROS Publisher for my current (x,y,z,yaw) position
+// ros::Publisher my_current_xyz_yaw_publisher;
 
-// ROS Publisher for the current setpoint
-ros::Publisher pickerSetpointToGUIPublisher;
+// // ROS Publisher for the current setpoint
+// ros::Publisher pickerSetpointToGUIPublisher;
 
 
 // RELEVANT NOTES ABOUT THE VARIABLES DECLARE HERE: