FILE fqName: fileName:/genericSamSmartcast.kt FUN name:f visibility:public modality:FINAL <> (x:kotlin.Any) returnType:kotlin.String VALUE_PARAMETER name:x index:0 type:kotlin.Any BLOCK_BODY WHEN type=kotlin.Unit origin=IF BRANCH if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=.A<*> GET_VAR 'x: kotlin.Any declared in .f' type=kotlin.Any origin=null then: BLOCK type=kotlin.Unit origin=null RETURN type=kotlin.Nothing from='public final fun f (x: kotlin.Any): kotlin.String declared in ' TYPE_OP type=kotlin.String origin=IMPLICIT_NOTNULL typeOperand=kotlin.String CALL 'public open fun call (block: @[FlexibleNullability] .A.I<@[FlexibleNullability] T of .A?>?): @[FlexibleNullability] kotlin.String? declared in .A' type=@[FlexibleNullability] kotlin.String? origin=null $this: TYPE_OP type=.A<*> origin=IMPLICIT_CAST typeOperand=.A<*> GET_VAR 'x: kotlin.Any declared in .f' type=kotlin.Any origin=null block: TYPE_OP type=@[FlexibleNullability] .A.I? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] .A.I? FUN_EXPR type=kotlin.Function1 origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> (y:kotlin.Any?) returnType:@[FlexibleNullability] kotlin.String? VALUE_PARAMETER name:y index:0 type:kotlin.Any? BLOCK_BODY RETURN type=kotlin.Nothing from='local final fun (y: kotlin.Any?): @[FlexibleNullability] kotlin.String? declared in .f' CONST String type=kotlin.String value="OK" RETURN type=kotlin.Nothing from='public final fun f (x: kotlin.Any): kotlin.String declared in ' CONST String type=kotlin.String value="Fail"