should these be `override`? Not sure if this applies when the function is not concrete in the trait (but I think it does).