The first part of your question is answered by others, but no one has addressed the 2nd part yet. Someone other than the OP has since edited the 2nd question, my answer may no longer apply
UInt are not the same,
UInt16 is an unsigned 16 bit integer,
UInt is an unsigned 32 bit integer. They vary quite a bit in their maximum value.