   designations, and later occurrences of a given field will replace earlier appearances. ###
   R = {}
   for [ fieldhints, stuff..., ] in fieldhints_and_stuff
-    for [ fail, field_designation, ] from @_walk_fails_and_field_designations_from_selector me, fieldhints
+    for [ fail, field_designation, ] from @_walk_fails_and_fieldnrs_from_selector me, fieldhints
       if fail? then _record me, fail
       else          R[ field_designation ]  = stuff
   yield [ field_designation, stuff..., ] for field_designation, stuff of R

  edges       = [ 'top', 'left', 'bottom', 'right', ] if '*' in edges
  fieldnames  = []
  #.........................................................................................................
  for [ fail, fieldname, ] from @_walk_fails_and_field_designations_from_selector me, selector
    ### TAINT ad-hoc fail message production, use method ###
    if fail? then _record me, "#{fail} (#{jr {fieldname}})"
    else          fieldnames.push fieldname

  edges       = [ 'top', 'left', 'bottom', 'right', ] if '*' in edges
  fieldnames  = []
  #.........................................................................................................
  for [ fail, field_designation, ] from @_walk_fails_and_fieldnrs_from_selector me, selector
    ### TAINT ad-hoc fail message production, use method ###
    if fail? then _record me, "#{fail} (#{jr {field_designation}})"
    else          fieldnames.push field_designation
