https://www.somethingsblog.com/2024/10/21/upgrade-smart-contracts-with-uups-proxy-pattern/