I have no words on how wonky inheritance is in JavaScript
(which makes sense since it’s a prototype-based OOP)