Negation Multiplication Incorrectly Says Does Not FIt
When multiplying by a negative floating point number, it results in reporting the value does not fit.
Money test{Currency::USD, -1234, 0u, 0};
constexpr double percentage{1.5 / 100};
test * percentage; // throws