The MD5 hashes have a length of 128 bits. It seems therefore obvious that if we could get all hashes from MD5 for more than $2^{128}$ inputs, at least 2 hashes would be identical.
But what if we could provide all $2^{128}$ possible inputs to MD5, would we get distinct hashes?
In other words is MD5 a bijection if input has always less than $2^{128}$ bits?