Copyright (c) 2024 Amirmahdi Nourkazemi
Permission is hereby granted to use this software as deemed fit.