Since uncheckedThrow does a do-nothing cast, these instanceof checks are redundant. Everything could just flow through uncheckedThrow