I think it's because @GreenSock is doing some bit shifting in the rounding, so it's unsigned.   ~~2147483647 // => 2147483647 ~~2147483648 // => -2147483648