Limits for Broadcast Value and Fee Fraction

What are the lower and upper limits for ‘Value’ and ‘Fee Fraction’?
What’s the maximum number of decimals?

For ‘Fee Fraction’ I noticed that 0.03 is interpreted as 0.03% on Blockscan. Logically the lowest value should therefore be 0.0 and the highest 99.9…?

Answer found:
Fee fraction must be 0 - 42.94967295 %.
Value is converted to double precision, which gives 15–17 significant decimal digits precision.

0.05 is 5% (see URL below). @mtbitcoin
Value is -1 or such for the initial, and a positive integer for one of outcomes (eg you can broadcast that 1 will be Yes, 1 No). I don’t think the protocol cares how positive integers are assigned - that’s up to the broadcaster, but -1 is “to be decided”, maybe by convention, you can check the source code).

Thanks for quick reply.

0.03 => 0.03% must just be the library I use then.
What is the official range? Something like 0.0 to 0.99… would make sense.

Regarding Value I am interested in the exact range allowed, not how to initializing/resolving bets. There are broadcasts with values such as -10000000 and 42.94967295.

Well the link has this info:

value (float, required): Numerical value of the broadcast.

Any float should be okay.
If you create a simple broadcast I think you can 'cast currency rates, temperature, etc. I think that’s why any float is allowed.

Just found the answer in Chrome Wallet’s source.
//fee fraction must be less than 42.94967295 to be stored as a 4-byte hexadecimal

And VALUE is converted with toIEEE754
// Convert a JavaScript number to IEEE-754 Double Precision
// value represented as an array of 8 bytes (octets)

Double precision explained on Wikipedia

Double-precision binary floating-point is a commonly used format on PCs, due to its wider range over single-precision floating point, in spite of its performance and bandwidth cost. As with single-precision floating-point format, it lacks precision on integer numbers when compared with an integer format of the same size. It is commonly known simply as double. The IEEE 754 standard specifies a binary64 as having:

Sign bit: 1 bit
Exponent width: 11 bits
Significand precision: 53 bits (52 explicitly stored)
This gives 15–17 significant decimal digits precision.