code: def get_data_source(self):
          
          product_type = self.product_id.split('_')[1]
          if product_type.endswith('L1C') or product_type == 'OPER':
              return DataSource.SENTINEL2_L1C
          if product_type.endswith('L2A') or product_type == 'USER':
              return DataSource.SENTINEL2_L2A
          raise ValueError('Unknown data source of product {}'.format(self.product_id))
docs: The method determines data source from product ID.
  
          :return: Data source of the product
          :rtype: DataSource
          :raises: ValueError