Bson forbid to encode uint64

I’m curious about why bson will panic with an error “overflows int64” when encoding an uint64 value, while will pass with an int64 value. What is the difference between uint64 and int64 in bson or mongo? Is there any specific reason?