code: func csprngUint32(csprng io.Reader) (uint32, error) {
  	var buf [4]byte
  	err := csprngReadFull(csprng, buf[:])
  	if err != nil {
  		return 0, err
  	}
  
  	return binary.BigEndian.Uint32(buf[:]), nil
  }
docs: // csprngUint32, given a CSPRNG, returns a uniformly distributed
  // random number in [0, 2³²).