0(1) element: null 1(2) element: PyMatchStatement 2(3) refutable pattern: Class(1, attr=foo.bar) 3(4,15) READ ACCESS: Class 4(5,15) refutable pattern: 1 5(6) matched pattern: 1 6(7,15) refutable pattern: attr=foo.bar 7(8) refutable pattern: foo.bar 8(9,15) READ ACCESS: foo 9(10) matched pattern: foo.bar 10(11) matched pattern: attr=foo.bar 11(12) matched pattern: Class(1, attr=foo.bar) 12(13) element: PyStatementList 13(14) element: PyExpressionStatement 14(16) READ ACCESS: x 15(16) ASSERTTYPE ACCESS: null 16(17) element: PyExpressionStatement 17(18) READ ACCESS: y 18() element: null