Points-to sets of all variables
[]:<B: void <init>()>/%this -> [[]:NewObj{<LambdaConstructor$A: void <init>()>[1@L43] new B}, []:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}, []:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}, []:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:<LambdaConstructor$A: void <init>()>/$r1 -> [[]:NewObj{<LambdaConstructor$A: void <init>()>[1@L43] new B}]
[]:<LambdaConstructor$A: void <init>()>/%this -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[0@L8] $r0 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "get" <MethodType: java.util.function.Supplier ()>[MethodType: java.lang.Object (),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>()>,MethodType: LambdaConstructor$A ()](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor$A: void <init>(B)>/%this -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[5@L13] $r4 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.Function ()>[MethodType: java.lang.Object (java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B)>,MethodType: LambdaConstructor$A (B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor$A: void <init>(B)>/r1 -> [[]:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}]
[]:<LambdaConstructor$A: void <init>(B,B)>/%this -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[11@L18] $r9 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.BiFunction ()>[MethodType: java.lang.Object (java.lang.Object,java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B,B)>,MethodType: LambdaConstructor$A (B,B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor$A: void <init>(B,B)>/r1 -> [[]:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:<LambdaConstructor$A: void <init>(B,B)>/r2 -> [[]:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}]
[]:<LambdaConstructor: B b1()>/$r0 -> [[]:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}]
[]:<LambdaConstructor: B b2()>/$r0 -> [[]:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}]
[]:<LambdaConstructor: B b3()>/$r0 -> [[]:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r0 -> [[]:LambdaObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[0@L8] $r0 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "get" <MethodType: java.util.function.Supplier ()>[MethodType: java.lang.Object (),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>()>,MethodType: LambdaConstructor$A ()](),type=java.util.function.Supplier in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r1 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[0@L8] $r0 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "get" <MethodType: java.util.function.Supplier ()>[MethodType: java.lang.Object (),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>()>,MethodType: LambdaConstructor$A ()](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r10 -> [[]:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r11 -> [[]:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r12 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[11@L18] $r9 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.BiFunction ()>[MethodType: java.lang.Object (java.lang.Object,java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B,B)>,MethodType: LambdaConstructor$A (B,B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r4 -> [[]:LambdaObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[5@L13] $r4 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.Function ()>[MethodType: java.lang.Object (java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B)>,MethodType: LambdaConstructor$A (B)](),type=java.util.function.Function in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r5 -> [[]:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r6 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[5@L13] $r4 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.Function ()>[MethodType: java.lang.Object (java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B)>,MethodType: LambdaConstructor$A (B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/$r9 -> [[]:LambdaObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[11@L18] $r9 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.BiFunction ()>[MethodType: java.lang.Object (java.lang.Object,java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B,B)>,MethodType: LambdaConstructor$A (B,B)](),type=java.util.function.BiFunction in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r13 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[11@L18] $r9 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.BiFunction ()>[MethodType: java.lang.Object (java.lang.Object,java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B,B)>,MethodType: LambdaConstructor$A (B,B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r14 -> [[]:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}, []:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r15 -> [[]:EntryPointObj{alloc=MethodParam{<LambdaConstructor: void main(java.lang.String[])>/0},type=java.lang.String[] in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r2 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[0@L8] $r0 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "get" <MethodType: java.util.function.Supplier ()>[MethodType: java.lang.Object (),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>()>,MethodType: LambdaConstructor$A ()](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r3 -> [[]:NewObj{<LambdaConstructor$A: void <init>()>[1@L43] new B}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r7 -> [[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[5@L13] $r4 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.Function ()>[MethodType: java.lang.Object (java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B)>,MethodType: LambdaConstructor$A (B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}]
[]:<LambdaConstructor: void main(java.lang.String[])>/r8 -> [[]:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}]
[]:<LambdaConstructor: void use(java.lang.Object)>/r0 -> [[]:NewObj{<LambdaConstructor$A: void <init>()>[1@L43] new B}, []:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}, []:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}, []:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]

Points-to sets of all static fields

Points-to sets of all instance fields
[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[0@L8] $r0 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "get" <MethodType: java.util.function.Supplier ()>[MethodType: java.lang.Object (),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>()>,MethodType: LambdaConstructor$A ()](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}.b -> [[]:NewObj{<LambdaConstructor$A: void <init>()>[1@L43] new B}]
[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[11@L18] $r9 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.BiFunction ()>[MethodType: java.lang.Object (java.lang.Object,java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B,B)>,MethodType: LambdaConstructor$A (B,B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}.b -> [[]:NewObj{<LambdaConstructor: B b2()>[0@L29] new B}, []:NewObj{<LambdaConstructor: B b3()>[0@L33] new B}]
[]:LambdaConstructedObj{alloc=<LambdaConstructor: void main(java.lang.String[])>[5@L13] $r4 = invokedynamic <java.lang.invoke.LambdaMetafactory: java.lang.invoke.CallSite metafactory(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.invoke.MethodType,java.lang.invoke.MethodHandle,java.lang.invoke.MethodType)> "apply" <MethodType: java.util.function.Function ()>[MethodType: java.lang.Object (java.lang.Object),MethodHandle[REF_newInvokeSpecial]: <LambdaConstructor$A: void <init>(B)>,MethodType: LambdaConstructor$A (B)](),type=LambdaConstructor$A in <LambdaConstructor: void main(java.lang.String[])>}.b -> [[]:NewObj{<LambdaConstructor: B b1()>[0@L25] new B}]

Points-to sets of all array indexes
[]:EntryPointObj{alloc=MethodParam{<LambdaConstructor: void main(java.lang.String[])>/0},type=java.lang.String[] in <LambdaConstructor: void main(java.lang.String[])>}[*] -> [[]:EntryPointObj{alloc=MethodParam{<LambdaConstructor: void main(java.lang.String[])>/0}[*],type=java.lang.String in <LambdaConstructor: void main(java.lang.String[])>}]

