Given a marathon in Oengus:
- Fetch all the submissions.
- For each unique runner, see if their pronouns are set in Oengus.
- If they're not, see if they've linked their speedrun.com profile and fetch from the SRC API. If they didn't link their SRC profile, see if there's a SRC profile matching their username and use that.
- If that doesn't provide any pronouns, see if they've linked their Twitch account and fetch from the Twitch pronouns extension API at pronouns.alejo.io. If they didn't link their Twitch account, see if there's a Twitch account matching their username and use that.
- If that still doesn't provide any pronouns, we're out of options and we'll just assume they haven't provided them.
- If a runner's pronouns are he/him or she/her, bucket them as such. Any other pronouns are bucked under 'other'. (Normalizing pronouns is really hard and I'm mostly concerned about the percentage of gender minorities, sorry :<)
- If the marathon has a published schedule, use the data from above to determine schedule pronoun distribution as well.
The normalizedPercentages
data is calculated by throwing out all of the none
results; that is, we assume that unspecified pronouns adhere to the same ratio as the rest of the submissions.