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) WRITE ACCESS: x 5(11) matched pattern: [x] 6(7) element: PyAsPattern 7(8) refutable pattern: foo.bar 8(9,14) 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: PyExpressionStatement 13(14) READ ACCESS: y 14(15) element: PyExpressionStatement 15(16) READ ACCESS: z 16() element: null