docs: def to_protobuf(self) -> str:
          '''encode vote into protobuf'''
  
          vote = pavoteproto.Vote()
          vote.version = self.version
          vote.description = self.description
          vote.count_mode = vote.MODE.Value(self.count_mode)
          vote.start_block = self.start_block
          vote.end_block = self.end_block
          vote.choices.extend(self.choices)
  
          if not isinstance(self.vote_metainfo, bytes):
              vote.vote_metainfo = self.vote_metainfo.encode()
          else:
              vote.vote_metainfo = self.vote_metainfo
  
          proto = vote.SerializeToString()
  
          if len(proto) > 80:
              warnings.warn('\nMetainfo size exceeds maximum of 80 bytes allowed by OP_RETURN.')
  
          return proto