// TODO: y.1 shoudn't be part of the slice
// the issue is that when we do z = y, then the collected influence of y
// is broadcast into every conflicting place in z. So y.1 -> z -> z.0.
// we need something to "match up" influences so y.1 only flows to z.1
fn main() {
`[let mut x = 1;]`
`[let mut y = (0, 0);]`
`[y.1 += 1;]`
`[let z = y;]`
`[x += z.0;]`
`[x;]`
}