anchor.diff:      // top-level message, so look up our translation by calling Intl.message
       // with ourselves as an argument.
       if (name != null) {
  -      return Intl.message(
  -        Intl.gender(gender, male: male, female: female, other: other),
  +      return message(
  +        gender(targetGender, male: male, female: female, other: other),
           name: name,
           args: args,
           locale: locale);
  
positive.code:     if (other == null) {
        throw new ArgumentError("The 'other' named argument must be specified");
      }
      switch(gender) {
        case "female" : return female == null ? other : female;
        case "male" : return male == null ? other : male;
        default: return other;
  
negative.code:     // top-level message, so look up our translation by calling Intl.message
      // with ourselves as an argument.
      if (name != null) {
        return message(
          plural(howMany,
              zero: zero, one: one, two: two, few: few, many: many, other: other),
          name: name,
          args: args,
  