https://users.rust-lang.org/t/reverse-the-scan-of-iterator/7037/5
https://users.rust-lang.org/t/reverse-the-scan-of-iterator/7037/5