<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def data_to_string(self):
 """Returns a UTF8 string with the QR Code's data"""

        # FIX-ME: if we don't add the BOM_UTF8 char, QtQR doesn't decode
        # correctly; but if we add it, mobile apps don't.-
        # Apparently is a zbar bug.
        if self.data_type == 'text':
            return BOM_UTF8 + self.__class__.data_encode[self.data_type](self.data).encode('utf-8')
        else:
            return self.__class__.data_encode[self.data_type](self.data).encode('utf-8')