code: def findTextBackward(self, block, column, needle):
          
          if column is not None:
              index = block.text()[:column].rfind(needle)
          else:
              index = block.text().rfind(needle)
  
          if index != -1:
              return block, index
  
          for block in self.iterateBlocksBackFrom(block.previous()):
              column = block.text().rfind(needle)
              if column != -1:
                  return block, column
  
          raise ValueError('Not found')
docs: Search for a needle and return (block, column)
          Raise ValueError, if not found