collectAttenuators = (attenuators, policyFragment) => {
  if ('attenuate' in policyFragment) {
    attenuators.push(policyFragment.attenuate);
  }
  for (const value of values(policyFragment)) {
    if (typeof value === 'object' && value !== null) {
      collectAttenuators(attenuators, value);
    }
  }
}
Parses an attenuation definition for attenuator names

Note: this function is recursive
@param {string[]} attenuators - List of attenuator names; may be mutated
@param {AttenuationDefinition|Policy} policyFragment