Math.floor(2e50) === 2e50, yet its a float!!

~~2e50 returns 0 so the number is interpreted as a float, as it should be