code: def tags(self):
          
          tags = self.parsed_filename.groupdict()
          for pyver in tags['pyver'].split('.'):
              for abi in tags['abi'].split('.'):
                  for plat in tags['plat'].split('.'):
                      yield (pyver, abi, plat)
docs: A wheel file is compatible with the Cartesian product of the
          period-delimited tags in its filename.
          To choose a wheel file among several candidates having the same
          distribution version 'ver', an installer ranks each triple of
          (pyver, abi, plat) that its Python installation can run, sorting
          the wheels by the best-ranked tag it supports and then by their
          arity which is just len(list(compatibility_tags)).