0(1) element: null
1(2) element: PyMatchStatement
2(3) refutable pattern: [x] | (foo.bar as x)
3(4,6) refutable pattern: [x]
4(5,6) WRITE ACCESS: x
5(11) matched pattern: [x]
6(7) element: PyAsPattern
7(8) refutable pattern: foo.bar
8(9,15) READ ACCESS: foo
9(10) matched pattern: foo.bar
10(11) WRITE ACCESS: x
11(12) matched pattern: [x] | (foo.bar as x)
12(13) element: PyStatementList
13(14) element: PyExpressionStatement
14(16) READ ACCESS: y
15(16) ASSERTTYPE ACCESS: null
16(17) element: PyExpressionStatement
17(18) READ ACCESS: z
18() element: null