I missed the one. This is really super nasty. Matej, you should redesign things to make it typesafe. If the parent of a `DefaultLog` must be a `DefaultLogManager`, don't let them create a `DefaultLog` with any other kind of `LogManager`. Help the compiler tell the user what they're allowed to do with your APIs.