This is making the assumption that everyone will want to sample at a resolution of 1%.  What about the possibility of someone wanting to sample at 33.33%?  This makes send when people are doing billions of messages, as that extra decimal can make the difference of hundreds of thousands of messages. I would lean toward only allowing floats and not allowing the 0-100.