code: def _filter_extras(dm):
          
          for extra in list(filter(None, dm)):
              new_extra = extra
              reqs = dm.pop(extra)
              new_extra, _, marker = extra.partition(':')
              fails_marker = marker and (
                  invalid_marker(marker)
                  or not evaluate_marker(marker)
              )
              if fails_marker:
                  reqs = []
              new_extra = safe_extra(new_extra) or None
  
              dm.setdefault(new_extra, []).extend(reqs)
          return dm
docs: Given a mapping of extras to dependencies, strip off
          environment markers and filter out any dependencies
          not matching the markers.