`sealed class` vs `enum` — when would you choose `sealed`? | LetsGit.IT