https://habr.com/ru/company/pvs-studio/blog/315496/