code: func DeflateAuthDB(msg *protocol.AuthDB) ([]byte, error) {
  	blob, err := proto.Marshal(msg)
  	if err != nil {
  		return nil, err
  	}
  	out := bytes.Buffer{}
  	writer := zlib.NewWriter(&out)
  	_, err1 := io.Copy(writer, bytes.NewReader(blob))
  	err2 := writer.Close()
  	if err1 != nil {
  		return nil, err1
  	}
  	if err2 != nil {
  		return nil, err2
  	}
  	return out.Bytes(), nil
  }
docs: // DeflateAuthDB serializes AuthDB to byte buffer and compresses it with zlib.