struct A { mut: v int } struct B {      a A } struct C { mut: b B }  struct D { mut: c C } struct E { mut: v []int } struct F { e []E }

mut b := B{} b = B{A{2}} 
println('b is: ' + b.a.v.str())

mut c := C{} c.b = B{}

mut d := D{} d.c.b = B{}

f := F{[E{[10,20,30]},E{[100,200,300,400]}]}
println('f.e[0].v.len: ${f.e[0].v.len}')
println('f.e[1].v.len: ${f.e[1].v.len}')
===output===
b is: 2
f.e[0].v.len: 3
f.e[1].v.len: 4