https://www.kholoodtechnotes.net/2022/11/C-Sharp-exceptions.html