Hey, I’m trying to create a sealed response class. I do not want to use nullable type for payload of the response but couldnt find a good alternative for fail scenario. Is there a better approach to this problem? Here is my code: sealed class Response( val payload: RESPONSE_OBJECT?, val errorMessage: String) { class Success(payload: T) : Response(payload, errorMessage = "") class Fail(errorMessage: String) : Response(null, errorMessage) }