https://www.koemu.com/blog/2019/04/23/mini-hardening-project-32/