Contributors Initial code contribution: Richard Adams (otter606). PRs and contributions: Aleix Mariné Tena (AleixMT)