UFile (package = ) [public final class ConstructorDelegateKt {...]
    UClass (name = ConstructorDelegateKt) [public final class ConstructorDelegateKt {...}]
        UMethod (name = createBase) [public static final fun createBase(@org.jetbrains.annotations.NotNull i: int) : Base {...}]
            UParameter (name = i) [@org.jetbrains.annotations.NotNull var i: int]
                UAnnotation (fqName = org.jetbrains.annotations.NotNull) [@org.jetbrains.annotations.NotNull]
            UBlockExpression [{...}] : PsiType:Void
                UReturnExpression [return <init>(i)] : PsiType:Void
                    UCallExpression (kind = UastCallKind(name='constructor_call'), argCount = 1)) [<init>(i)] : PsiType:BaseImpl
                        UIdentifier (Identifier (BaseImpl)) [UIdentifier (Identifier (BaseImpl))]
                        USimpleNameReferenceExpression (identifier = <init>, resolvesTo = PsiClass: BaseImpl) [<init>] : PsiType:BaseImpl
                        USimpleNameReferenceExpression (identifier = i) [i] : PsiType:int
    UClass (name = Base) [public abstract interface Base {...}]
        UMethod (name = print) [public abstract fun print() : void = UastEmptyExpression]
    UClass (name = BaseImpl) [public final class BaseImpl : Base {...}]
        UField (name = x) [@org.jetbrains.annotations.NotNull private final var x: int]
            UAnnotation (fqName = org.jetbrains.annotations.NotNull) [@org.jetbrains.annotations.NotNull]
        UMethod (name = print) [public fun print() : void {...}]
            UBlockExpression [{...}] : PsiType:void
                UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [print(x)] : PsiType:void
                    UIdentifier (Identifier (print)) [UIdentifier (Identifier (print))]
                    USimpleNameReferenceExpression (identifier = print, resolvesTo = null) [print] : PsiType:void
                    USimpleNameReferenceExpression (identifier = x) [x] : PsiType:int
        UMethod (name = getX) [public final fun getX() : int = UastEmptyExpression]
        UMethod (name = BaseImpl) [public fun BaseImpl(@org.jetbrains.annotations.NotNull x: int) = UastEmptyExpression]
            UParameter (name = x) [@org.jetbrains.annotations.NotNull var x: int]
                UAnnotation (fqName = org.jetbrains.annotations.NotNull) [@org.jetbrains.annotations.NotNull]
    UClass (name = Derived) [public final class Derived : Base, java.lang.CharSequence {...}]
        UExpressionList (super_delegation) [super_delegation Base : createBase(10)]
            UTypeReferenceExpression (name = Base) [Base]
            UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [createBase(10)] : PsiType:Base
                UIdentifier (Identifier (createBase)) [UIdentifier (Identifier (createBase))]
                USimpleNameReferenceExpression (identifier = createBase, resolvesTo = null) [createBase] : PsiType:Base
                ULiteralExpression (value = 10) [10] : PsiType:int
        UExpressionList (super_delegation) [super_delegation java.lang.CharSequence : "abc"]
            UTypeReferenceExpression (name = java.lang.CharSequence) [java.lang.CharSequence]
            ULiteralExpression (value = "abc") ["abc"] : PsiType:String
        UMethod (name = Derived) [public fun Derived(@org.jetbrains.annotations.NotNull b: Base) = UastEmptyExpression]
            UParameter (name = b) [@org.jetbrains.annotations.NotNull var b: Base]
                UAnnotation (fqName = org.jetbrains.annotations.NotNull) [@org.jetbrains.annotations.NotNull]
