In chapter 3.2([Aliasing](https://github.com/rust-lang-nursery/nomicon/blob/master/src/aliasing.md)), `Why Aliasing Matters` section, is the optimize example wrong? [](url) ```rust fn compute(input: &u32, output: &mut u32) { let cached_input = *input; // keep *input in a register if cached_input > 10 { *output = 2; // x > 10 implies x > 5, so double and exit immediately } else if cached_input > 5 { *output *= 2; } } ``` should be: ```rust fn compute(input: &u32, output: &mut u32) { let cached_input = *input; // keep *input in a register if cached_input > 10 { *output *= 2; // x > 10 implies x > 5, so double and exit immediately } else if cached_input > 5 { *output *= 2; } } ``` or ```rust fn compute(input: &u32, output: &mut u32) { let cached_input = *input; // keep *input in a register if cached_input > 10 { *output = 1; // x > 10 implies x > 5, so double and exit immediately } else if cached_input > 5 { *output *= 2; } } ```