private static uint FastToDecHex (int val)
{
if (val < 100)
return (uint)DecHexDigits [val];
// Uses 2^19 (524288) to compute val / 100 for val < 10000.
int v = (val * 5243) >> 19;
return (uint)((DecHexDigits [v] << 8) | DecHexDigits [val - v * 100]);
}