Answer
A typed answer to one question.
New subtypes may be added in a minor release when TypeSafe adds a kind of question, and UnknownAnswer holds any answer of a type this version doesn't know. A Kotlin when or a Java pattern switch over Answer that must keep compiling across upgrades should therefore end in an else (in Java, default) branch.