UFile (package = ) [public final class NonTrivialIdentifiersKt {...]
    UClass (name = NonTrivialIdentifiersKt) [public final class NonTrivialIdentifiersKt {...}]
        UMethod (name = main) [public static final fun main(@org.jetbrains.annotations.Nullable a: A) : void {...}]
            UParameter (name = a) [@org.jetbrains.annotations.Nullable var a: A]
                UAnnotation (fqName = org.jetbrains.annotations.Nullable) [@org.jetbrains.annotations.Nullable]
            UBlockExpression [{...}] : PsiType:void
                UCallExpression (kind = UastCallKind(name='method_call'), argCount = 0)) [invoke()] : PsiType:void
                    UIdentifier (Identifier (()) [UIdentifier (Identifier (())]
                    USimpleNameReferenceExpression (identifier = invoke, resolvesTo = null) [invoke] : PsiType:void
                UDeclarationsExpression [var p: A = <init>()]
                    ULocalVariable (name = p) [var p: A = <init>()]
                        UCallExpression (kind = UastCallKind(name='constructor_call'), argCount = 0)) [<init>()] : PsiType:A
                            UIdentifier (Identifier (A)) [UIdentifier (Identifier (A))]
                            USimpleNameReferenceExpression (identifier = <init>, resolvesTo = PsiClass: A) [<init>] : PsiType:A
                UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [invoke({ ...})] : PsiType:void
                    UIdentifier (Identifier ({)) [UIdentifier (Identifier ({))]
                    USimpleNameReferenceExpression (identifier = invoke, resolvesTo = null) [invoke] : PsiType:void
                    ULambdaExpression [{ ...}] : PsiType:Function0<? extends Unit>
                        UBlockExpression [{...}]
                            UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [invoke({ ...})] : PsiType:void
                                UIdentifier (Identifier (p)) [UIdentifier (Identifier (p))]
                                USimpleNameReferenceExpression (identifier = invoke, resolvesTo = null) [invoke] : PsiType:void
                                ULambdaExpression [{ ...}] : PsiType:Function0<? extends Unit>
                                    UBlockExpression [{...}]
                                        UCallExpression (kind = UastCallKind(name='method_call'), argCount = 0)) [invoke()] : PsiType:void
                                            UIdentifier (Identifier (()) [UIdentifier (Identifier (())]
                                            USimpleNameReferenceExpression (identifier = invoke, resolvesTo = null) [invoke] : PsiType:void
    UClass (name = A) [public final class A {...}]
        UMethod (name = invoke) [public final fun invoke() : void {...}]
            UBlockExpression [{...}] : PsiType:void
                UCallExpression (kind = UastCallKind(name='method_call'), argCount = 0)) [invoke()] : PsiType:void
                    UIdentifier (Identifier (()) [UIdentifier (Identifier (())]
                    USimpleNameReferenceExpression (identifier = invoke, resolvesTo = null) [invoke] : PsiType:void
        UMethod (name = invoke) [public final fun invoke(@org.jetbrains.annotations.NotNull f: kotlin.jvm.functions.Function0<kotlin.Unit>) : void {...}]
            UParameter (name = f) [@org.jetbrains.annotations.NotNull var f: kotlin.jvm.functions.Function0<kotlin.Unit>]
                UAnnotation (fqName = org.jetbrains.annotations.NotNull) [@org.jetbrains.annotations.NotNull]
            UBlockExpression [{...}] : PsiType:void
        UMethod (name = A) [public fun A() = UastEmptyExpression]
