Arranged evaluation order again to use the most efficient encoding possible for larger numeric values.
Fixed support for 16 bit data types.