<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def register_catchall_controlreq(self, callback, callback_parsed=None):
 """ Registers a callback that is called for all control requests received by your Thing `Example` #!python def controlreq_callback(data):
 print(data) client.register_catchall_controlreq(controlreq_callback) `callback` (required) the function name that you want to be called on receipt of a new control request `callback_parsed` (optional) (function reference) callback function to invoke on receipt of a control ask/tell. This is equivalent to `callback` except the dict includes the `parsed` key which holds the set of values in a [PointDataObject](./Point.m.html#IoticAgent.IOT.Point.PointDataObject) instance. If both `callback_parsed` and `callback` have been specified, the former takes precedence and `callback` is only called if the point data could not be parsed according to its current value description. More details on the contents of the `data` dictionary for controls see: [create_control()](./Thing.m.html#IoticAgent.IOT.Thing.Thing.create_control) """

        if callback_parsed:
            callback = self._get_parsed_control_callback(callback_parsed, callback)
        return self.__client.register_callback_controlreq(callback)