Integer Downcasting Vulnerability: Demonstration and Effective Fix

In Solidity versions 0.8 and above, overflow and underflow checking is enabled by default. However, this checking does not apply to conversions between integer types, including data-type conversions.