feat: add verified wallet accounts to community requests

This commit extends the `CommunityRequestToJoin` with `RevealedAddresses` which represent wallet addresses and signatures provided by the sender, to proof a community owner ownership of those wallet addresses.

**Note: This only works with keystore files maanged by status-go**

At high level, the follwing happens:

1. User instructs Status to send a request to join to a community. By adding a password hash to the instruction, Status will try to unlock the users keystore and verify each wallet account.
2. For every verified wallet account, a signature is created for the following payload, using each wallet's private key

   ``` keccak256(chatkey + communityID + requestToJoinID) ``` A map of walletAddress->signature is then attached to the community request to join, which will be sent to the community owner
3. The owner node receives the request, and if the community requires users to hold tokens to become a member, it will check and verify whether the given wallet addresses are indeed owned by the sender. If any signature provided by the request cannot be recovered, the request is immediately declined by the owner.
4. The verified addresses are then added to the owner node's database such that, once the request should be accepted, the addresses can be used to check on chain whether they own the necessary funds to fulfill the community's permissions

The checking of required funds is **not** part of this commit. It will be added in a follow-up commit.
This commit is contained in:
Pascal Precht 2023-03-17 10:19:40 +01:00 committed by Follow the white rabbit
parent 736766ec37
commit 051314aad0
14 changed files with 664 additions and 416 deletions

View File

@ -1417,6 +1417,20 @@ func (o *Community) Categories() map[string]*protobuf.CommunityCategory {
return response
}
func (o *Community) TokenPermissions() map[string]*protobuf.CommunityTokenPermission {
return o.config.CommunityDescription.TokenPermissions
}
func (o *Community) TokenPermissionsByType(permissionType protobuf.CommunityTokenPermission_Type) []*protobuf.CommunityTokenPermission {
permissions := make([]*protobuf.CommunityTokenPermission, 0)
for _, tokenPermission := range o.TokenPermissions() {
if tokenPermission.Type == permissionType {
permissions = append(permissions, tokenPermission)
}
}
return permissions
}
func (o *Community) AddTokenPermission(permission *protobuf.CommunityTokenPermission) (*CommunityChanges, error) {
o.mutex.Lock()
defer o.mutex.Unlock()

View File

@ -21,6 +21,7 @@ import (
"github.com/pkg/errors"
"go.uber.org/zap"
"github.com/status-im/status-go/account"
"github.com/status-im/status-go/eth-node/crypto"
"github.com/status-im/status-go/eth-node/types"
"github.com/status-im/status-go/images"
@ -51,6 +52,7 @@ type Manager struct {
subscriptions []chan *Subscription
ensVerifier *ens.Verifier
identity *ecdsa.PrivateKey
accountsManager *account.GethManager
logger *zap.Logger
stdoutLogger *zap.Logger
transport *transport.Transport
@ -83,7 +85,19 @@ func (t *HistoryArchiveDownloadTask) Cancel() {
close(t.CancelChan)
}
func NewManager(identity *ecdsa.PrivateKey, db *sql.DB, encryptor *encryption.Protocol, logger *zap.Logger, verifier *ens.Verifier, transport *transport.Transport, torrentConfig *params.TorrentConfig) (*Manager, error) {
type managerOptions struct {
accountsManager *account.GethManager
}
type ManagerOption func(*managerOptions)
func WithAccountManager(accountsManager *account.GethManager) ManagerOption {
return func(opts *managerOptions) {
opts.accountsManager = accountsManager
}
}
func NewManager(identity *ecdsa.PrivateKey, db *sql.DB, encryptor *encryption.Protocol, logger *zap.Logger, verifier *ens.Verifier, transport *transport.Transport, torrentConfig *params.TorrentConfig, opts ...ManagerOption) (*Manager, error) {
if identity == nil {
return nil, errors.New("empty identity")
}
@ -100,6 +114,11 @@ func NewManager(identity *ecdsa.PrivateKey, db *sql.DB, encryptor *encryption.Pr
return nil, errors.Wrap(err, "failed to create archive logger")
}
managerConfig := managerOptions{}
for _, opt := range opts {
opt(&managerConfig)
}
manager := &Manager{
logger: logger,
stdoutLogger: stdoutLogger,
@ -117,6 +136,10 @@ func NewManager(identity *ecdsa.PrivateKey, db *sql.DB, encryptor *encryption.Pr
},
}
if managerConfig.accountsManager != nil {
manager.accountsManager = managerConfig.accountsManager
}
if verifier != nil {
sub := verifier.Subscribe()
@ -1141,11 +1164,12 @@ func (m *Manager) HandleCommunityRequestToJoin(signer *ecdsa.PublicKey, request
}
requestToJoin := &RequestToJoin{
PublicKey: common.PubkeyToHex(signer),
Clock: request.Clock,
ENSName: request.EnsName,
CommunityID: request.CommunityId,
State: RequestToJoinStatePending,
PublicKey: common.PubkeyToHex(signer),
Clock: request.Clock,
ENSName: request.EnsName,
CommunityID: request.CommunityId,
State: RequestToJoinStatePending,
RevealedAddresses: request.RevealedAddresses,
}
requestToJoin.CalculateID()
@ -1154,16 +1178,70 @@ func (m *Manager) HandleCommunityRequestToJoin(signer *ecdsa.PublicKey, request
return nil, err
}
becomeMemberPermissions := community.TokenPermissionsByType(protobuf.CommunityTokenPermission_BECOME_MEMBER)
// If user is already a member, then accept request automatically
// It may happen when member removes itself from community and then tries to rejoin
// More specifically, CommunityRequestToLeave may be delivered later than CommunityRequestToJoin, or not delivered at all
acceptAutomatically := community.AcceptRequestToJoinAutomatically() || community.HasMember(signer)
if acceptAutomatically {
if len(becomeMemberPermissions) == 0 && acceptAutomatically {
err = m.markRequestToJoin(signer, community)
if err != nil {
return nil, err
}
requestToJoin.State = RequestToJoinStateAccepted
return requestToJoin, nil
}
if len(becomeMemberPermissions) > 0 {
// we have token permissions but requester hasn't revealed
// any addresses
if len(request.RevealedAddresses) == 0 {
err = m.markRequestToJoinAsCanceled(signer, community)
if err != nil {
return nil, err
}
requestToJoin.State = RequestToJoinStateDeclined
return requestToJoin, nil
}
// verify if revealed addresses indeed belong to requester
for address, signature := range request.RevealedAddresses {
recoverParams := account.RecoverParams{
Message: types.EncodeHex(crypto.Keccak256(crypto.CompressPubkey(signer), community.ID(), requestToJoin.ID)),
Signature: types.EncodeHex(signature),
}
recovered, err := m.accountsManager.Recover(recoverParams)
if err != nil {
return nil, err
}
if recovered.Hex() != address {
// if ownership of only one wallet address cannot be verified,
// we mark the request as cancelled and stop
err = m.markRequestToJoinAsCanceled(signer, community)
if err != nil {
return nil, err
}
requestToJoin.State = RequestToJoinStateDeclined
return requestToJoin, nil
}
}
// Save revealed addresses + signatures so they can later be added
// to the community member list when the request is accepted
err = m.persistence.SaveRequestToJoinRevealedAddresses(requestToJoin)
if err != nil {
return nil, err
}
if acceptAutomatically {
err = m.markRequestToJoin(signer, community)
if err != nil {
return nil, err
}
requestToJoin.State = RequestToJoinStateAccepted
}
}
return requestToJoin, nil
@ -1587,12 +1665,13 @@ func (m *Manager) RequestToJoin(requester *ecdsa.PublicKey, request *requests.Re
clock := uint64(time.Now().Unix())
requestToJoin := &RequestToJoin{
PublicKey: common.PubkeyToHex(requester),
Clock: clock,
ENSName: request.ENSName,
CommunityID: request.CommunityID,
State: RequestToJoinStatePending,
Our: true,
PublicKey: common.PubkeyToHex(requester),
Clock: clock,
ENSName: request.ENSName,
CommunityID: request.CommunityID,
State: RequestToJoinStatePending,
Our: true,
RevealedAddresses: make(map[string][]byte),
}
requestToJoin.CalculateID()

View File

@ -322,6 +322,57 @@ func (p *Persistence) SaveRequestToJoin(request *RequestToJoin) (err error) {
return err
}
func (p *Persistence) SaveRequestToJoinRevealedAddresses(request *RequestToJoin) (err error) {
tx, err := p.db.BeginTx(context.Background(), &sql.TxOptions{})
if err != nil {
return
}
defer func() {
if err == nil {
err = tx.Commit()
return
}
// don't shadow original error
_ = tx.Rollback()
}()
query := `INSERT OR REPLACE INTO communities_requests_to_join_revealed_addresses (request_id, address) VALUES (?, ?)`
stmt, err := tx.Prepare(query)
if err != nil {
return
}
defer stmt.Close()
for address := range request.RevealedAddresses {
_, err = stmt.Exec(
request.ID,
address,
)
if err != nil {
return
}
}
return
}
func (p *Persistence) GetRequestToJoinRevealedAddresses(requestID []byte) ([]string, error) {
revealedAddresses := make([]string, 0)
rows, err := p.db.Query(`SELECT address FROM communities_requests_to_join_revealed_addresses WHERE request_id = ?`, requestID)
if err != nil {
return nil, err
}
defer rows.Close()
for rows.Next() {
address := ""
err := rows.Scan(&address)
if err != nil {
return nil, err
}
revealedAddresses = append(revealedAddresses, address)
}
return revealedAddresses, nil
}
func (p *Persistence) SaveRequestToLeave(request *RequestToLeave) error {
tx, err := p.db.BeginTx(context.Background(), &sql.TxOptions{})
if err != nil {

View File

@ -15,14 +15,15 @@ const (
)
type RequestToJoin struct {
ID types.HexBytes `json:"id"`
PublicKey string `json:"publicKey"`
Clock uint64 `json:"clock"`
ENSName string `json:"ensName,omitempty"`
ChatID string `json:"chatId"`
CommunityID types.HexBytes `json:"communityId"`
State RequestToJoinState `json:"state"`
Our bool `json:"our"`
ID types.HexBytes `json:"id"`
PublicKey string `json:"publicKey"`
Clock uint64 `json:"clock"`
ENSName string `json:"ensName,omitempty"`
ChatID string `json:"chatId"`
CommunityID types.HexBytes `json:"communityId"`
State RequestToJoinState `json:"state"`
Our bool `json:"our"`
RevealedAddresses map[string][]byte `json:"revealedAddresses,omitempty"`
}
func (r *RequestToJoin) CalculateID() {
@ -31,13 +32,14 @@ func (r *RequestToJoin) CalculateID() {
func (r *RequestToJoin) ToSyncProtobuf() *protobuf.SyncCommunityRequestsToJoin {
return &protobuf.SyncCommunityRequestsToJoin{
Id: r.ID,
PublicKey: r.PublicKey,
Clock: r.Clock,
EnsName: r.ENSName,
ChatId: r.ChatID,
CommunityId: r.CommunityID,
State: uint64(r.State),
Id: r.ID,
PublicKey: r.PublicKey,
Clock: r.Clock,
EnsName: r.ENSName,
ChatId: r.ChatID,
CommunityId: r.CommunityID,
State: uint64(r.State),
RevealedAddresses: r.RevealedAddresses,
}
}
@ -49,6 +51,7 @@ func (r *RequestToJoin) InitFromSyncProtobuf(proto *protobuf.SyncCommunityReques
r.ChatID = proto.ChatId
r.CommunityID = proto.CommunityId
r.State = RequestToJoinState(proto.State)
r.RevealedAddresses = proto.RevealedAddresses
}
func (r *RequestToJoin) Empty() bool {

View File

@ -407,7 +407,11 @@ func NewMessenger(
ensVerifier := ens.New(node, logger, transp, database, c.verifyENSURL, c.verifyENSContractAddress)
communitiesManager, err := communities.NewManager(identity, database, encryptionProtocol, logger, ensVerifier, transp, c.torrentConfig)
managerOptions := []communities.ManagerOption{
communities.WithAccountManager(accountsManager),
}
communitiesManager, err := communities.NewManager(identity, database, encryptionProtocol, logger, ensVerifier, transp, c.torrentConfig, managerOptions...)
if err != nil {
return nil, err
}

View File

@ -21,6 +21,7 @@ import (
"github.com/meirf/gopart"
"github.com/status-im/status-go/account"
"github.com/status-im/status-go/eth-node/crypto"
"github.com/status-im/status-go/eth-node/types"
"github.com/status-im/status-go/images"
@ -501,10 +502,40 @@ func (m *Messenger) RequestToJoinCommunity(request *requests.RequestToJoinCommun
}
requestToJoinProto := &protobuf.CommunityRequestToJoin{
Clock: requestToJoin.Clock,
EnsName: requestToJoin.ENSName,
DisplayName: displayName,
CommunityId: community.ID(),
Clock: requestToJoin.Clock,
EnsName: requestToJoin.ENSName,
DisplayName: displayName,
CommunityId: community.ID(),
RevealedAddresses: make(map[string][]byte),
}
// find wallet accounts and attach wallet addresses and
// signatures to request
if request.Password != "" {
walletAccounts, err := m.settings.GetAccounts()
if err != nil {
return nil, err
}
for _, walletAccount := range walletAccounts {
if !walletAccount.Chat && walletAccount.Type != accounts.AccountTypeWatch {
verifiedAccount, err := m.accountsManager.GetVerifiedWalletAccount(m.settings, walletAccount.Address.Hex(), request.Password)
if err != nil {
return nil, err
}
messageToSign := types.EncodeHex(crypto.Keccak256(m.IdentityPublicKeyCompressed(), request.CommunityID, requestToJoin.ID))
signParams := account.SignParams{
Data: messageToSign,
Address: verifiedAccount.Address.Hex(),
Password: request.Password,
}
signatureBytes, err := m.accountsManager.Sign(signParams, verifiedAccount)
if err != nil {
return nil, err
}
requestToJoinProto.RevealedAddresses[verifiedAccount.Address.Hex()] = signatureBytes
}
}
}
payload, err := proto.Marshal(requestToJoinProto)

View File

@ -1250,7 +1250,17 @@ func (m *Messenger) HandleCommunityRequestToJoin(state *ReceivedMessageState, si
if err != nil {
return err
}
}
if requestToJoin.State == communities.RequestToJoinStateDeclined {
cancel := &requests.DeclineRequestToJoinCommunity{
ID: requestToJoin.ID,
}
_, err = m.DeclineRequestToJoinCommunity(cancel)
if err != nil {
return err
}
return nil
}
community, err := m.communitiesManager.GetByID(requestToJoinProto.CommunityId)

View File

@ -79,6 +79,7 @@
// 1677486338_add_community_tokens_table.up.sql (527B)
// 1678292329_add_collapsed_categories.up.sql (170B)
// 1678800760_add_index_to_raw_messages.up.sql (88B)
// 1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql (168B)
// README.md (554B)
// doc.go (850B)
@ -164,7 +165,7 @@ func _000001_initDownDbSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5e, 0xbb, 0x3f, 0x1, 0x75, 0x19, 0x70, 0x86, 0xa7, 0x34, 0x40, 0x17, 0x34, 0x3e, 0x18, 0x51, 0x79, 0xd4, 0x22, 0xad, 0x8f, 0x80, 0xcc, 0xa6, 0xcc, 0x6, 0x2b, 0x62, 0x2, 0x47, 0xba, 0xf9}}
return a, nil
}
@ -184,7 +185,7 @@ func _000001_initUpDbSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x60, 0xdc, 0xeb, 0xe, 0xc2, 0x4f, 0x75, 0xa, 0xf6, 0x3e, 0xc7, 0xc4, 0x4, 0xe2, 0xe1, 0xa4, 0x73, 0x2f, 0x4a, 0xad, 0x1a, 0x0, 0xc3, 0x93, 0x9d, 0x77, 0x3e, 0x31, 0x91, 0x77, 0x2e, 0xc8}}
return a, nil
}
@ -204,7 +205,7 @@ func _000002_add_last_ens_clock_valueUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000002_add_last_ens_clock_value.up.sql", size: 77, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "000002_add_last_ens_clock_value.up.sql", size: 77, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x4d, 0x3, 0x8f, 0xd5, 0x85, 0x83, 0x47, 0xbe, 0xf9, 0x82, 0x7e, 0x81, 0xa4, 0xbd, 0xaa, 0xd5, 0x98, 0x18, 0x5, 0x2d, 0x82, 0x42, 0x3b, 0x3, 0x50, 0xc3, 0x1e, 0x84, 0x35, 0xf, 0xb6, 0x2b}}
return a, nil
}
@ -224,7 +225,7 @@ func _1586358095_add_replaceUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd2, 0xb3, 0xa9, 0xc7, 0x7f, 0x9d, 0x8f, 0x43, 0x8c, 0x9e, 0x58, 0x8d, 0x44, 0xbc, 0xfa, 0x6b, 0x5f, 0x3f, 0x5a, 0xbe, 0xe8, 0xb1, 0x16, 0xf, 0x91, 0x2a, 0xa0, 0x71, 0xbb, 0x8d, 0x6b, 0xcb}}
return a, nil
}
@ -244,7 +245,7 @@ func _1588665364_add_image_dataUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1588665364_add_image_data.up.sql", size: 186, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1588665364_add_image_data.up.sql", size: 186, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd6, 0xc6, 0x35, 0xb4, 0x4c, 0x39, 0x96, 0x29, 0x30, 0xda, 0xf4, 0x8f, 0xcb, 0xf1, 0x9f, 0x84, 0xdc, 0x88, 0xd4, 0xd5, 0xbc, 0xb6, 0x5b, 0x46, 0x78, 0x67, 0x76, 0x1a, 0x5, 0x36, 0xdc, 0xe5}}
return a, nil
}
@ -264,7 +265,7 @@ func _1589365189_add_pow_targetUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1589365189_add_pow_target.up.sql", size: 66, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1589365189_add_pow_target.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x4e, 0x3a, 0xe2, 0x2e, 0x7d, 0xaf, 0xbb, 0xcc, 0x21, 0xa1, 0x7a, 0x41, 0x9a, 0xd0, 0xbb, 0xa9, 0xc8, 0x35, 0xf9, 0x32, 0x34, 0x46, 0x44, 0x9a, 0x86, 0x40, 0x7c, 0xb9, 0x23, 0xc7, 0x3, 0x3f}}
return a, nil
}
@ -284,7 +285,7 @@ func _1591277220_add_index_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1591277220_add_index_messages.up.sql", size: 240, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1591277220_add_index_messages.up.sql", size: 240, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9c, 0xfe, 0xbe, 0xd5, 0xb8, 0x8f, 0xdd, 0xef, 0xbb, 0xa8, 0xad, 0x7f, 0xed, 0x5b, 0x5b, 0x2f, 0xe6, 0x82, 0x27, 0x78, 0x1f, 0xb9, 0x57, 0xdc, 0x8, 0xc2, 0xb2, 0xa9, 0x9a, 0x4, 0xe1, 0x7a}}
return a, nil
}
@ -304,7 +305,7 @@ func _1593087212_add_mute_chat_and_raw_message_fieldsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1593087212_add_mute_chat_and_raw_message_fields.up.sql", size: 215, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1593087212_add_mute_chat_and_raw_message_fields.up.sql", size: 215, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x73, 0x99, 0x61, 0xd1, 0xaa, 0xb4, 0xbf, 0xaf, 0xd7, 0x20, 0x17, 0x40, 0xf9, 0x2, 0xfb, 0xcc, 0x40, 0x2a, 0xd, 0x86, 0x36, 0x30, 0x88, 0x89, 0x25, 0x80, 0x42, 0xb0, 0x5b, 0xe9, 0x73, 0x78}}
return a, nil
}
@ -324,7 +325,7 @@ func _1595862781_add_audio_dataUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1595862781_add_audio_data.up.sql", size: 246, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1595862781_add_audio_data.up.sql", size: 246, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xae, 0xd2, 0xee, 0x55, 0xfb, 0x36, 0xa4, 0x92, 0x66, 0xe, 0x81, 0x62, 0x1e, 0x7a, 0x69, 0xa, 0xd5, 0x4b, 0xa5, 0x6a, 0x8d, 0x1d, 0xce, 0xf3, 0x3e, 0xc0, 0x5f, 0x9c, 0x66, 0x1b, 0xb4, 0xed}}
return a, nil
}
@ -344,7 +345,7 @@ func _1595865249_create_emoji_reactions_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1595865249_create_emoji_reactions_table.up.sql", size: 300, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1595865249_create_emoji_reactions_table.up.sql", size: 300, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3e, 0xc5, 0x43, 0x5c, 0x3d, 0x53, 0x43, 0x2c, 0x1a, 0xa5, 0xb6, 0xbf, 0x7, 0x4, 0x5a, 0x3e, 0x40, 0x8b, 0xa4, 0x57, 0x12, 0x58, 0xbc, 0x42, 0xe2, 0xc3, 0xde, 0x76, 0x98, 0x80, 0xe2, 0xbe}}
return a, nil
}
@ -364,7 +365,7 @@ func _1596805115_create_group_chat_invitations_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1596805115_create_group_chat_invitations_table.up.sql", size: 231, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1596805115_create_group_chat_invitations_table.up.sql", size: 231, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6d, 0xb1, 0x14, 0x6d, 0x54, 0x28, 0x67, 0xc3, 0x23, 0x6a, 0xfc, 0x80, 0xdf, 0x9e, 0x4c, 0x35, 0x36, 0xf, 0xf8, 0xf3, 0x5f, 0xae, 0xad, 0xb, 0xc1, 0x51, 0x8e, 0x17, 0x7, 0xe5, 0x7f, 0x91}}
return a, nil
}
@ -384,7 +385,7 @@ func _1597322655_add_invitation_admin_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1597322655_add_invitation_admin_chat_field.up.sql", size: 54, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1597322655_add_invitation_admin_chat_field.up.sql", size: 54, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa9, 0x7a, 0xa0, 0xf2, 0xdb, 0x13, 0x91, 0x91, 0xa8, 0x34, 0x1a, 0xa1, 0x49, 0x68, 0xd5, 0xae, 0x2c, 0xd8, 0xd5, 0xea, 0x8f, 0x8c, 0xc7, 0x2, 0x4e, 0x58, 0x2c, 0x3a, 0x14, 0xd4, 0x4f, 0x2c}}
return a, nil
}
@ -404,7 +405,7 @@ func _1597757544_add_nicknameUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf4, 0xa2, 0x64, 0x50, 0xc5, 0x4, 0xb9, 0x8b, 0xd1, 0x18, 0x9b, 0xc3, 0x91, 0x36, 0x2a, 0x1f, 0xc3, 0x6c, 0x2d, 0x92, 0xf8, 0x5e, 0xff, 0xb1, 0x59, 0x61, 0x2, 0x1c, 0xe1, 0x85, 0x90, 0xa4}}
return a, nil
}
@ -424,7 +425,7 @@ func _1598955122_add_mentionsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8d, 0x22, 0x17, 0x92, 0xd2, 0x11, 0x4e, 0x7, 0x93, 0x9a, 0x55, 0xfd, 0xb, 0x97, 0xc4, 0x63, 0x6a, 0x81, 0x97, 0xcd, 0xb2, 0xf8, 0x4b, 0x5f, 0x3c, 0xfa, 0x3a, 0x38, 0x53, 0x10, 0xed, 0x9d}}
return a, nil
}
@ -444,7 +445,7 @@ func _1599641390_add_emoji_reactions_indexUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1599641390_add_emoji_reactions_index.up.sql", size: 126, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1599641390_add_emoji_reactions_index.up.sql", size: 126, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf9, 0xd8, 0xdc, 0xa7, 0xb, 0x92, 0x7a, 0x61, 0x37, 0x24, 0x1c, 0x77, 0x5e, 0xe, 0x7e, 0xfc, 0x9f, 0x98, 0x7b, 0x65, 0xe7, 0xf9, 0x71, 0x57, 0x89, 0x2d, 0x90, 0x1b, 0xf6, 0x5e, 0x37, 0xe8}}
return a, nil
}
@ -464,7 +465,7 @@ func _1599720851_add_seen_index_remove_long_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1599720851_add_seen_index_remove_long_messages.up.sql", size: 150, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1599720851_add_seen_index_remove_long_messages.up.sql", size: 150, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x24, 0x1c, 0xc4, 0x78, 0x91, 0xc7, 0xeb, 0xfe, 0xc8, 0xa0, 0xd8, 0x13, 0x27, 0x97, 0xc8, 0x96, 0x56, 0x97, 0x33, 0x2c, 0x1e, 0x16, 0x8a, 0xd3, 0x49, 0x99, 0x3, 0xe9, 0xbb, 0xc4, 0x5, 0x3c}}
return a, nil
}
@ -484,7 +485,7 @@ func _1603198582_add_profile_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1603198582_add_profile_chat_field.up.sql", size: 45, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1603198582_add_profile_chat_field.up.sql", size: 45, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xaa, 0xca, 0xe, 0x46, 0xa0, 0x9, 0x9d, 0x47, 0x57, 0xe9, 0xfb, 0x17, 0xeb, 0x9c, 0xf6, 0xb8, 0x1d, 0xe9, 0xd, 0x0, 0xd5, 0xe5, 0xd8, 0x9e, 0x60, 0xa, 0xbf, 0x32, 0x2c, 0x52, 0x7f, 0x6a}}
return a, nil
}
@ -504,7 +505,7 @@ func _1603816533_add_linksUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc9, 0x24, 0xd6, 0x1d, 0xa, 0x83, 0x1e, 0x4d, 0xf, 0xae, 0x4d, 0x8c, 0x51, 0x32, 0xa8, 0x37, 0xb0, 0x14, 0xfb, 0x32, 0x34, 0xc8, 0xc, 0x4e, 0x5b, 0xc5, 0x15, 0x65, 0x73, 0x0, 0x0, 0x1d}}
return a, nil
}
@ -524,7 +525,7 @@ func _1603888149_create_chat_identity_last_published_tableUpSql() (*asset, error
return nil, err
}
info := bindataFileInfo{name: "1603888149_create_chat_identity_last_published_table.up.sql", size: 407, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1603888149_create_chat_identity_last_published_table.up.sql", size: 407, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7f, 0x9, 0xf, 0xfb, 0xdb, 0x3c, 0x86, 0x70, 0x82, 0xda, 0x10, 0x25, 0xe2, 0x4e, 0x40, 0x45, 0xab, 0x8b, 0x1c, 0x91, 0x7c, 0xf1, 0x70, 0x2e, 0x81, 0xf3, 0x71, 0x45, 0xda, 0xe2, 0xa4, 0x57}}
return a, nil
}
@ -544,7 +545,7 @@ func _1605075346_add_communitiesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1f, 0x64, 0xea, 0xb4, 0xae, 0x9e, 0xdb, 0x9, 0x58, 0xb6, 0x5c, 0x7a, 0x50, 0xc5, 0xfe, 0x93, 0x5d, 0x36, 0x85, 0x5d, 0x6a, 0xba, 0xc9, 0x7e, 0x84, 0xd7, 0xbf, 0x2a, 0x53, 0xf3, 0x97, 0xf1}}
return a, nil
}
@ -564,7 +565,7 @@ func _1610117927_add_message_cacheUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610117927_add_message_cache.up.sql", size: 142, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1610117927_add_message_cache.up.sql", size: 142, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x34, 0xf1, 0xf0, 0x82, 0x79, 0x28, 0x19, 0xc2, 0x39, 0x6a, 0xa5, 0x96, 0x59, 0x23, 0xa0, 0xed, 0x60, 0x58, 0x86, 0x9, 0xb9, 0xad, 0xfb, 0xa, 0xe3, 0x47, 0x6e, 0xa1, 0x18, 0xe8, 0x39, 0x2c}}
return a, nil
}
@ -584,7 +585,7 @@ func _1610959908_add_dont_wrap_to_raw_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610959908_add_dont_wrap_to_raw_messages.up.sql", size: 83, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1610959908_add_dont_wrap_to_raw_messages.up.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x71, 0x2, 0x9a, 0xca, 0xd4, 0x38, 0x44, 0x30, 0x2b, 0xa8, 0x27, 0x32, 0x63, 0x53, 0x22, 0x60, 0x59, 0x84, 0x23, 0x96, 0x77, 0xf0, 0x56, 0xd7, 0x94, 0xe0, 0x95, 0x28, 0x6, 0x1d, 0x4e, 0xb1}}
return a, nil
}
@ -604,7 +605,7 @@ func _1610960912_add_send_on_personal_topicUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610960912_add_send_on_personal_topic.up.sql", size: 82, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1610960912_add_send_on_personal_topic.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x77, 0xac, 0x2f, 0xc4, 0xd, 0xa7, 0x1b, 0x37, 0x30, 0xc2, 0x68, 0xee, 0xde, 0x54, 0x5e, 0xbf, 0x3f, 0xa0, 0xd6, 0xc6, 0x9f, 0xd4, 0x34, 0x12, 0x76, 0x1e, 0x66, 0x4a, 0xfc, 0xf, 0xee, 0xc9}}
return a, nil
}
@ -624,7 +625,7 @@ func _1612870480_add_datasync_idUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1612870480_add_datasync_id.up.sql", size: 111, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1612870480_add_datasync_id.up.sql", size: 111, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x34, 0x9a, 0xbc, 0xfa, 0xaa, 0x8c, 0x9c, 0x37, 0x67, 0x15, 0x9c, 0x7e, 0x78, 0x75, 0x66, 0x82, 0x18, 0x72, 0x10, 0xbc, 0xd4, 0xab, 0x44, 0xfe, 0x57, 0x85, 0x6d, 0x19, 0xf5, 0x96, 0x8a, 0xbe}}
return a, nil
}
@ -644,7 +645,7 @@ func _1614152139_add_communities_request_to_joinUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1614152139_add_communities_request_to_join.up.sql", size: 831, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1614152139_add_communities_request_to_join.up.sql", size: 831, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x11, 0x3, 0x26, 0xf9, 0x29, 0x50, 0x4f, 0xcd, 0x46, 0xe5, 0xb1, 0x6b, 0xb9, 0x2, 0x40, 0xb1, 0xdf, 0x4a, 0x4c, 0x7a, 0xda, 0x3, 0x35, 0xcd, 0x2d, 0xcc, 0x80, 0x7d, 0x57, 0x5f, 0x3, 0x5c}}
return a, nil
}
@ -664,7 +665,7 @@ func _1615374373_add_confirmationsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xdd, 0xa6, 0x65, 0xc5, 0x1d, 0xb2, 0x77, 0x36, 0xe3, 0x79, 0xda, 0xe8, 0x7a, 0xa4, 0xdf, 0x45, 0xae, 0xd8, 0xb4, 0xba, 0x90, 0xfd, 0x74, 0x71, 0x14, 0x75, 0x73, 0x72, 0xb9, 0x9e, 0x1, 0x81}}
return a, nil
}
@ -684,7 +685,7 @@ func _1617694931_add_notification_centerUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1617694931_add_notification_center.up.sql", size: 572, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1617694931_add_notification_center.up.sql", size: 572, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x10, 0x45, 0xc6, 0xc9, 0x73, 0xbb, 0x1f, 0xda, 0xa3, 0x4d, 0x19, 0x98, 0x85, 0x2d, 0xca, 0xda, 0xcc, 0x3b, 0x32, 0xff, 0xc7, 0x7b, 0xe3, 0x9f, 0x9b, 0x2a, 0x93, 0xf5, 0xdf, 0x65, 0x38, 0x91}}
return a, nil
}
@ -704,7 +705,7 @@ func _1618923660_create_pin_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1618923660_create_pin_messages.up.sql", size: 265, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1618923660_create_pin_messages.up.sql", size: 265, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x61, 0x44, 0x3a, 0xbe, 0x30, 0xd2, 0x7e, 0xc0, 0xe2, 0x8e, 0x65, 0x53, 0x54, 0xbb, 0x7a, 0x1c, 0xb3, 0x5d, 0xd2, 0xa6, 0xa9, 0x28, 0xb7, 0xa4, 0x5f, 0x8b, 0x9, 0x5f, 0x17, 0xc1, 0x85, 0x21}}
return a, nil
}
@ -724,7 +725,7 @@ func _1619094007_add_joined_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1619094007_add_joined_chat_field.up.sql", size: 101, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1619094007_add_joined_chat_field.up.sql", size: 101, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfa, 0x30, 0x81, 0x3a, 0x2f, 0x9f, 0xb3, 0x0, 0x55, 0x8e, 0x1d, 0xa8, 0xb0, 0x68, 0xf0, 0x40, 0x1a, 0x6c, 0xaa, 0xfc, 0x33, 0xd1, 0xd1, 0x55, 0x3f, 0xf2, 0xbd, 0x54, 0xa1, 0x2b, 0x40, 0x95}}
return a, nil
}
@ -744,7 +745,7 @@ func _1619099821_add_last_synced_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1619099821_add_last_synced_field.up.sql", size: 226, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1619099821_add_last_synced_field.up.sql", size: 226, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf, 0x52, 0x22, 0xe, 0x2f, 0xd7, 0x93, 0x5f, 0x42, 0xc2, 0x93, 0x4, 0x35, 0x6f, 0xc9, 0x19, 0xed, 0x6b, 0x52, 0x6f, 0xae, 0x99, 0xe2, 0x68, 0x3d, 0x4f, 0x40, 0xe, 0xe1, 0xa, 0x47, 0x21}}
return a, nil
}
@ -764,7 +765,7 @@ func _1621933219_add_mentionedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0x76, 0x8a, 0xc9, 0x7, 0x8f, 0xa5, 0xcb, 0x12, 0x21, 0x4e, 0xfe, 0x96, 0x77, 0xcf, 0x7f, 0x76, 0x75, 0x36, 0x2c, 0xf8, 0x1d, 0x13, 0xcb, 0xcd, 0x6e, 0x70, 0xbf, 0xf5, 0x93, 0x67, 0xd1}}
return a, nil
}
@ -784,7 +785,7 @@ func _1622010048_add_unviewed_mentions_countUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622010048_add_unviewed_mentions_count.up.sql", size: 114, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1622010048_add_unviewed_mentions_count.up.sql", size: 114, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7c, 0x16, 0x85, 0xa6, 0x5b, 0xe1, 0x66, 0xb9, 0x84, 0xbe, 0x7f, 0xa, 0x77, 0x23, 0xb9, 0xef, 0x8e, 0x2, 0x8, 0xfc, 0x61, 0xb2, 0x43, 0xa9, 0x63, 0xae, 0xb4, 0xdf, 0x30, 0xb1, 0x61, 0x4b}}
return a, nil
}
@ -804,7 +805,7 @@ func _1622061278_add_message_activity_center_notification_fieldUpSql() (*asset,
return nil, err
}
info := bindataFileInfo{name: "1622061278_add_message_activity_center_notification_field.up.sql", size: 80, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1622061278_add_message_activity_center_notification_field.up.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8, 0xc, 0xa6, 0x1f, 0xa5, 0xc6, 0x7c, 0x6f, 0xab, 0x2c, 0x2d, 0xb5, 0xa4, 0xdd, 0xc1, 0xd6, 0x44, 0x83, 0xf9, 0xb1, 0xa5, 0xce, 0x34, 0x3d, 0x2, 0xa9, 0x35, 0xcf, 0xc6, 0xb2, 0x43, 0x37}}
return a, nil
}
@ -824,7 +825,7 @@ func _1622464518_set_synced_to_fromUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622464518_set_synced_to_from.up.sql", size: 105, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1622464518_set_synced_to_from.up.sql", size: 105, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x33, 0x3e, 0x2b, 0xa, 0x1e, 0xc7, 0x6d, 0x6f, 0xd1, 0x1d, 0xe8, 0x4b, 0xdd, 0x92, 0x76, 0xea, 0xf2, 0x3e, 0x15, 0x85, 0xc4, 0xc3, 0x31, 0xf1, 0xc0, 0xa2, 0xd7, 0x47, 0xde, 0x4e, 0xfd, 0xc6}}
return a, nil
}
@ -844,7 +845,7 @@ func _1622464519_add_chat_descriptionUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622464519_add_chat_description.up.sql", size: 93, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1622464519_add_chat_description.up.sql", size: 93, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0x2e, 0x89, 0x31, 0xec, 0xef, 0xeb, 0x43, 0xf5, 0x96, 0x6d, 0xce, 0x91, 0x8a, 0x37, 0x2a, 0x11, 0x7a, 0x3f, 0xd9, 0x10, 0xbb, 0xa1, 0xbc, 0x7, 0xe0, 0x3b, 0xa5, 0xf4, 0xa6, 0xf4, 0xa1}}
return a, nil
}
@ -864,7 +865,7 @@ func _1622622253_add_pinned_by_to_pin_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622622253_add_pinned_by_to_pin_messages.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1622622253_add_pinned_by_to_pin_messages.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9b, 0x94, 0xa3, 0x45, 0x91, 0x1e, 0x66, 0xd1, 0x96, 0x5a, 0xaf, 0xfa, 0x29, 0x39, 0xa8, 0x3a, 0x97, 0x4c, 0x65, 0x6, 0x96, 0x90, 0x4c, 0xfe, 0xce, 0x7d, 0x5d, 0xd4, 0xb3, 0x8, 0x6d, 0x5f}}
return a, nil
}
@ -884,7 +885,7 @@ func _1623938329_add_author_activity_center_notification_fieldUpSql() (*asset, e
return nil, err
}
info := bindataFileInfo{name: "1623938329_add_author_activity_center_notification_field.up.sql", size: 66, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1623938329_add_author_activity_center_notification_field.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0xe6, 0xa7, 0xd5, 0x26, 0xff, 0xab, 0x92, 0x88, 0xf0, 0xd3, 0x34, 0xd9, 0x2f, 0xe7, 0x18, 0x1a, 0x40, 0xf9, 0xbe, 0x8e, 0xfc, 0xd0, 0x4f, 0x1f, 0x4a, 0xb9, 0x83, 0x3f, 0xa9, 0xde, 0xb}}
return a, nil
}
@ -904,7 +905,7 @@ func _1623938330_add_edit_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1623938330_add_edit_messages.up.sql", size: 369, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1623938330_add_edit_messages.up.sql", size: 369, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0xd2, 0xce, 0xe, 0x5c, 0x19, 0xbe, 0x5e, 0x29, 0xbe, 0x9b, 0x31, 0x53, 0x76, 0xb2, 0xc8, 0x56, 0xf0, 0x82, 0xfe, 0x7d, 0x6c, 0xe8, 0x5c, 0xe9, 0x7a, 0x5d, 0x5, 0xc4, 0x92, 0x38, 0xe3}}
return a, nil
}
@ -924,7 +925,7 @@ func _1624978434_add_muted_communityUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1624978434_add_muted_community.up.sql", size: 82, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1624978434_add_muted_community.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6, 0xdc, 0x6e, 0x6f, 0x97, 0xc7, 0x3d, 0x50, 0xab, 0x80, 0x87, 0x44, 0x43, 0x38, 0xe6, 0xc5, 0xc1, 0x91, 0x26, 0xf, 0x16, 0xe, 0xd9, 0x32, 0x37, 0x25, 0x96, 0x25, 0x6, 0xc8, 0xb5, 0x4a}}
return a, nil
}
@ -944,7 +945,7 @@ func _1625018910_add_repply_message_activity_center_notification_fieldUpSql() (*
return nil, err
}
info := bindataFileInfo{name: "1625018910_add_repply_message_activity_center_notification_field.up.sql", size: 86, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1625018910_add_repply_message_activity_center_notification_field.up.sql", size: 86, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf2, 0x52, 0x12, 0x40, 0xd8, 0x6f, 0x71, 0x97, 0x46, 0x39, 0xaa, 0x74, 0x41, 0xcd, 0x45, 0x4c, 0xe8, 0xd9, 0xe2, 0x56, 0x8e, 0x78, 0x18, 0x62, 0xf6, 0xa8, 0x36, 0xe9, 0x9a, 0x1f, 0xc, 0xb1}}
return a, nil
}
@ -964,7 +965,7 @@ func _1625762506_add_deleted_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1625762506_add_deleted_messages.up.sql", size: 357, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1625762506_add_deleted_messages.up.sql", size: 357, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd5, 0x61, 0x42, 0xb6, 0x8c, 0x7f, 0x2d, 0xec, 0xa9, 0x6d, 0x3d, 0x0, 0xa3, 0x32, 0xd8, 0x4a, 0x38, 0x5c, 0x97, 0xfc, 0x68, 0xde, 0xa9, 0xb7, 0xd8, 0xde, 0xb, 0x29, 0x93, 0xdc, 0x81, 0xf8}}
return a, nil
}
@ -984,7 +985,7 @@ func _1627388946_add_communities_synced_atUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1627388946_add_communities_synced_at.up.sql", size: 87, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1627388946_add_communities_synced_at.up.sql", size: 87, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc1, 0xbd, 0x9b, 0x6a, 0xc9, 0x1a, 0x7a, 0x34, 0xcf, 0x5f, 0x80, 0x9e, 0x8c, 0x1c, 0xc0, 0xec, 0x4e, 0x78, 0xb0, 0x2d, 0x15, 0x77, 0x38, 0x4a, 0x6a, 0x5, 0x84, 0xf5, 0x8d, 0x8b, 0xbe, 0x9}}
return a, nil
}
@ -1004,7 +1005,7 @@ func _1628280060_createUsermessagesIndexSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1628280060_create-usermessages-index.sql", size: 80, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1628280060_create-usermessages-index.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x10, 0x6f, 0x70, 0x47, 0x40, 0xab, 0xa8, 0x60, 0xe0, 0xf9, 0x8, 0x7e, 0x19, 0x9d, 0xba, 0x33, 0x16, 0xfc, 0x3c, 0xdc, 0xa8, 0xa6, 0x53, 0x61, 0x39, 0x82, 0x91, 0xcf, 0x69, 0xd8, 0xf2, 0xcf}}
return a, nil
}
@ -1024,7 +1025,7 @@ func _1632303896_modify_contacts_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1632303896_modify_contacts_table.up.sql", size: 1574, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1632303896_modify_contacts_table.up.sql", size: 1574, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x81, 0x1e, 0x6c, 0x3c, 0xd, 0xd7, 0x7d, 0xbb, 0x19, 0xbc, 0xe4, 0x7, 0xfd, 0xf8, 0x66, 0x6d, 0x78, 0xf6, 0x4, 0xe6, 0x51, 0xe4, 0xe6, 0xdc, 0xe, 0x5a, 0x2e, 0xac, 0xe6, 0xe7, 0x24, 0x69}}
return a, nil
}
@ -1044,7 +1045,7 @@ func _1633349838_add_emoji_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1633349838_add_emoji_column_in_chats.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1654848338, 0)}
info := bindataFileInfo{name: "1633349838_add_emoji_column_in_chats.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xcb, 0x33, 0xcb, 0x3b, 0xa9, 0x99, 0x77, 0x6a, 0xea, 0xc4, 0x39, 0xd7, 0xa1, 0x49, 0xa7, 0xdf, 0xff, 0x72, 0xda, 0x34, 0x21, 0x67, 0x66, 0xca, 0x65, 0x46, 0x1, 0xa6, 0x4e, 0xf9, 0x38, 0x86}}
return a, nil
}
@ -1064,7 +1065,7 @@ func _1634831235_add_highlight_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1634831235_add_highlight_column_in_chats.up.sql", size: 62, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1634831235_add_highlight_column_in_chats.up.sql", size: 62, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xaa, 0x63, 0x5c, 0x73, 0x19, 0x83, 0xbd, 0x35, 0x80, 0x9f, 0x66, 0xec, 0x4c, 0xbc, 0x9d, 0x2d, 0x52, 0x91, 0x6d, 0xb3, 0x2b, 0x87, 0xde, 0x24, 0x46, 0x5c, 0xd, 0xfd, 0x78, 0xf5, 0xe3, 0xe9}}
return a, nil
}
@ -1084,7 +1085,7 @@ func _1634896007_add_last_updated_locally_and_removedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1634896007_add_last_updated_locally_and_removed.up.sql", size: 131, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1634896007_add_last_updated_locally_and_removed.up.sql", size: 131, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2e, 0xa8, 0x34, 0xe2, 0xc0, 0x62, 0xc8, 0xd6, 0x5a, 0x87, 0xe3, 0x70, 0xe1, 0xc4, 0x16, 0x9c, 0x60, 0x2e, 0x98, 0xf0, 0x91, 0x84, 0xbe, 0xe0, 0xdf, 0x3e, 0x4d, 0x24, 0xc4, 0x6c, 0x40, 0x17}}
return a, nil
}
@ -1104,7 +1105,7 @@ func _1635840039_add_clock_read_at_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1635840039_add_clock_read_at_column_in_chats.up.sql", size: 245, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1635840039_add_clock_read_at_column_in_chats.up.sql", size: 245, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6c, 0xba, 0x3f, 0xba, 0x1a, 0x71, 0xa8, 0x9, 0x19, 0xbe, 0x1e, 0x38, 0x50, 0x30, 0x3a, 0x52, 0x15, 0x29, 0xee, 0x49, 0x19, 0x6f, 0x53, 0xc2, 0xc6, 0x6c, 0xd9, 0x80, 0x7e, 0xb9, 0x58, 0x7a}}
return a, nil
}
@ -1124,7 +1125,7 @@ func _1637852321_add_received_invitation_admin_column_in_chatsUpSql() (*asset, e
return nil, err
}
info := bindataFileInfo{name: "1637852321_add_received_invitation_admin_column_in_chats.up.sql", size: 72, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1637852321_add_received_invitation_admin_column_in_chats.up.sql", size: 72, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x70, 0x8b, 0x92, 0x56, 0x83, 0x70, 0x7f, 0x6, 0xb2, 0xd, 0x1c, 0x2f, 0xcc, 0x93, 0xc3, 0x85, 0x8c, 0xc2, 0x38, 0x94, 0x7e, 0x88, 0x3f, 0x39, 0x34, 0xf8, 0x90, 0xcf, 0x83, 0x68, 0x3d, 0xe5}}
return a, nil
}
@ -1144,7 +1145,7 @@ func _1645034601_display_nameUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1645034601_display_name.up.sql", size: 110, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "1645034601_display_name.up.sql", size: 110, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x15, 0xfc, 0xda, 0x70, 0x53, 0x19, 0x90, 0x20, 0x4, 0x1c, 0x99, 0x42, 0x53, 0x1a, 0xd6, 0xb8, 0xbb, 0x8a, 0xe8, 0xbe, 0xcc, 0xb7, 0xc, 0x7f, 0x73, 0x50, 0x18, 0xf1, 0x8b, 0x18, 0x54, 0x64}}
return a, nil
}
@ -1164,7 +1165,7 @@ func _1645034602_add_mutual_contact_requestUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1645034602_add_mutual_contact_request.up.sql", size: 454, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1645034602_add_mutual_contact_request.up.sql", size: 454, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1a, 0xe0, 0x5d, 0x68, 0xb8, 0x50, 0xa4, 0xbb, 0x3e, 0x4f, 0x2, 0x87, 0xad, 0x87, 0x6e, 0x38, 0xdf, 0xc8, 0x4c, 0xe2, 0x5f, 0xd1, 0x6, 0xdc, 0xe7, 0xbd, 0x4a, 0x9c, 0xf3, 0x91, 0xa1, 0x51}}
return a, nil
}
@ -1184,7 +1185,7 @@ func _1650373957_add_contact_request_stateUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1650373957_add_contact_request_state.up.sql", size: 59, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1650373957_add_contact_request_state.up.sql", size: 59, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5e, 0xc1, 0x3f, 0x29, 0xe, 0x19, 0x86, 0x1a, 0x4c, 0x6c, 0x2a, 0x90, 0x9d, 0xdf, 0xb1, 0xb, 0x72, 0x25, 0xcd, 0x6c, 0x5f, 0xd, 0x51, 0x9e, 0x85, 0xc0, 0x9, 0xb7, 0xbc, 0x87, 0x23, 0xec}}
return a, nil
}
@ -1204,7 +1205,7 @@ func _1656958989_contact_verificationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1656958989_contact_verification.up.sql", size: 624, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1656958989_contact_verification.up.sql", size: 624, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3a, 0x3f, 0x28, 0x38, 0x33, 0xdb, 0xe9, 0x4d, 0xc0, 0x54, 0x8c, 0x2a, 0x73, 0xc4, 0xdd, 0x5c, 0xc5, 0x1a, 0x93, 0x4b, 0x6, 0x13, 0xbe, 0x42, 0xd2, 0x7f, 0xd4, 0xc, 0xc5, 0x4e, 0x6d, 0xce}}
return a, nil
}
@ -1224,7 +1225,7 @@ func _1658236268_add_discord_message_authors_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1658236268_add_discord_message_authors_table.up.sql", size: 191, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1658236268_add_discord_message_authors_table.up.sql", size: 191, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3d, 0xb7, 0xdb, 0x79, 0x1, 0x15, 0xe7, 0x76, 0x5d, 0x22, 0x54, 0x82, 0x9a, 0xbe, 0x24, 0xc1, 0x82, 0xcf, 0x67, 0x91, 0x53, 0xcc, 0xac, 0x74, 0x18, 0x61, 0x69, 0x68, 0x19, 0xca, 0x2b, 0xa8}}
return a, nil
}
@ -1244,7 +1245,7 @@ func _1659619997_add_discord_messages_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1659619997_add_discord_messages_table.up.sql", size: 371, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1659619997_add_discord_messages_table.up.sql", size: 371, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xde, 0x12, 0x9c, 0x96, 0xe2, 0x42, 0x3f, 0x94, 0x62, 0xc2, 0x76, 0xab, 0x3b, 0x4c, 0x85, 0x36, 0x48, 0xcc, 0x73, 0x60, 0x93, 0x5a, 0xd6, 0x7, 0xd6, 0x0, 0xee, 0x1b, 0x1e, 0x34, 0x58, 0x99}}
return a, nil
}
@ -1264,7 +1265,7 @@ func _1660226788_create_chat_identity_social_linksUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1660226788_create_chat_identity_social_links.up.sql", size: 318, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1660226788_create_chat_identity_social_links.up.sql", size: 318, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3c, 0x76, 0x40, 0xe9, 0x85, 0xc4, 0x38, 0xf8, 0xe5, 0x5d, 0xe8, 0x13, 0x46, 0x1b, 0xc, 0x1, 0xe9, 0x2f, 0x74, 0xd1, 0x79, 0x59, 0xa4, 0xdb, 0x4a, 0x4a, 0xf4, 0x98, 0x58, 0x3c, 0x57, 0xd3}}
return a, nil
}
@ -1284,7 +1285,7 @@ func _1660226789_add_walletconnectsessions_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1660226789_add_walletconnectsessions_table.up.sql", size: 215, mode: os.FileMode(0644), modTime: time.Unix(1664364467, 0)}
info := bindataFileInfo{name: "1660226789_add_walletconnectsessions_table.up.sql", size: 215, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf8, 0x5c, 0x72, 0x2, 0xed, 0x36, 0x19, 0x91, 0x4d, 0x1a, 0xc1, 0xab, 0x84, 0xfa, 0x41, 0xb1, 0x46, 0xa5, 0xdb, 0x3f, 0x76, 0x47, 0xd3, 0x75, 0x3c, 0x6a, 0x8e, 0x78, 0xe6, 0x41, 0xdc, 0x7f}}
return a, nil
}
@ -1304,7 +1305,7 @@ func _1661242854_add_communities_requests_to_leaveUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1661242854_add_communities_requests_to_leave.up.sql", size: 204, mode: os.FileMode(0644), modTime: time.Unix(1666081963, 0)}
info := bindataFileInfo{name: "1661242854_add_communities_requests_to_leave.up.sql", size: 204, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x49, 0x2e, 0x7d, 0x14, 0xef, 0x6e, 0x95, 0x4b, 0x6, 0x70, 0x2e, 0xd1, 0xf6, 0x59, 0xf9, 0xe, 0x56, 0xa, 0x9c, 0x80, 0x18, 0xca, 0xb9, 0x49, 0x19, 0xf, 0x89, 0x94, 0x36, 0x6d, 0x93, 0x9a}}
return a, nil
}
@ -1324,7 +1325,7 @@ func _1662044232_add_chat_imageUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662044232_add_chat_image.up.sql", size: 49, mode: os.FileMode(0644), modTime: time.Unix(1666081963, 0)}
info := bindataFileInfo{name: "1662044232_add_chat_image.up.sql", size: 49, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb3, 0x74, 0xdf, 0x50, 0x79, 0x73, 0x9e, 0xd0, 0xff, 0xa4, 0xd3, 0x87, 0xc3, 0x48, 0x31, 0x6c, 0xdf, 0xa6, 0x20, 0x85, 0xe6, 0x4e, 0x19, 0x9d, 0xef, 0xcc, 0x84, 0x2b, 0x5d, 0x44, 0x34, 0x6}}
return a, nil
}
@ -1344,7 +1345,7 @@ func _1662106895_add_chat_first_message_timestampUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662106895_add_chat_first_message_timestamp.up.sql", size: 113, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1662106895_add_chat_first_message_timestamp.up.sql", size: 113, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8b, 0x55, 0x74, 0xfa, 0xf5, 0x51, 0x85, 0x19, 0xfd, 0xfb, 0x6, 0x79, 0x4d, 0x1d, 0xd, 0x3, 0x46, 0x66, 0x34, 0x1e, 0xce, 0x91, 0x21, 0x29, 0xf6, 0x71, 0xe7, 0x31, 0x39, 0x8f, 0x9d, 0x5}}
return a, nil
}
@ -1364,7 +1365,7 @@ func _1662723928_add_discord_author_image_fieldsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662723928_add_discord_author_image_fields.up.sql", size: 75, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1662723928_add_discord_author_image_fields.up.sql", size: 75, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1e, 0x5b, 0x48, 0x57, 0x98, 0x55, 0x9a, 0xf1, 0x75, 0xf7, 0xb5, 0x41, 0x5e, 0x96, 0xc5, 0xce, 0xfc, 0x30, 0x5c, 0x15, 0x35, 0x9e, 0x4e, 0x4a, 0x3b, 0x38, 0x42, 0xc4, 0x27, 0x3c, 0x87, 0xbf}}
return a, nil
}
@ -1384,7 +1385,7 @@ func _1664195977_add_deleted_for_mesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1664195977_add_deleted_for_mes.up.sql", size: 352, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1664195977_add_deleted_for_mes.up.sql", size: 352, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7d, 0x9d, 0x13, 0x9, 0xaa, 0x44, 0x14, 0x93, 0xe2, 0xf5, 0x53, 0xb7, 0x79, 0xa8, 0x18, 0xf0, 0x6c, 0xa4, 0x9c, 0x73, 0xc1, 0xaa, 0xc5, 0x2e, 0xc5, 0x41, 0xd7, 0x24, 0xb0, 0xd7, 0xb8, 0xdf}}
return a, nil
}
@ -1404,7 +1405,7 @@ func _1664367420_add_discord_attachments_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1664367420_add_discord_attachments_table.up.sql", size: 350, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1664367420_add_discord_attachments_table.up.sql", size: 350, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x48, 0xe1, 0xb6, 0x4f, 0x6f, 0x92, 0x0, 0xb4, 0xf, 0x55, 0x12, 0x1c, 0x98, 0x6d, 0xbc, 0x1e, 0xfd, 0xae, 0x1c, 0xce, 0xd1, 0x3d, 0x2, 0x21, 0x2e, 0xc0, 0x13, 0xa, 0xb2, 0xec, 0x81, 0x13}}
return a, nil
}
@ -1424,7 +1425,7 @@ func _1665079662_add_spectated_column_in_communitiesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665079662_add_spectated_column_in_communities.up.sql", size: 86, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1665079662_add_spectated_column_in_communities.up.sql", size: 86, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa0, 0x5d, 0xfe, 0xe2, 0xbe, 0xdf, 0xba, 0x45, 0xe9, 0xfc, 0xa7, 0x5f, 0xda, 0x19, 0xdb, 0x40, 0x96, 0x59, 0x78, 0xa, 0xd7, 0x4a, 0xca, 0x1a, 0x93, 0xfb, 0xae, 0x6d, 0x74, 0x7, 0x36, 0xdd}}
return a, nil
}
@ -1444,7 +1445,7 @@ func _1665479047_add_community_id_in_notificationsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665479047_add_community_id_in_notifications.up.sql", size: 169, mode: os.FileMode(0644), modTime: time.Unix(1669031482, 0)}
info := bindataFileInfo{name: "1665479047_add_community_id_in_notifications.up.sql", size: 169, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd9, 0x8f, 0x8b, 0x1c, 0xaa, 0x6a, 0x56, 0xd6, 0xa5, 0x88, 0x57, 0x13, 0x8f, 0xea, 0xb9, 0x23, 0x82, 0x50, 0xb7, 0x65, 0x1f, 0xab, 0xfa, 0x23, 0x6f, 0x0, 0x7, 0xb6, 0x6e, 0xb5, 0x85, 0x44}}
return a, nil
}
@ -1464,7 +1465,7 @@ func _1665484435_add_encrypted_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665484435_add_encrypted_messages.up.sql", size: 402, mode: os.FileMode(0644), modTime: time.Unix(1668711465, 0)}
info := bindataFileInfo{name: "1665484435_add_encrypted_messages.up.sql", size: 402, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8f, 0x5c, 0x1e, 0x1c, 0x7f, 0xae, 0x5f, 0xeb, 0x3c, 0x6c, 0xcd, 0xc2, 0x99, 0x48, 0x5c, 0x83, 0xa0, 0xa2, 0x97, 0x5, 0x39, 0x82, 0x71, 0x90, 0x47, 0x21, 0x84, 0x29, 0x19, 0xa4, 0x7a, 0x90}}
return a, nil
}
@ -1484,7 +1485,7 @@ func _1665560200_add_contact_verification_individualUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665560200_add_contact_verification_individual.up.sql", size: 509, mode: os.FileMode(0644), modTime: time.Unix(1669031482, 0)}
info := bindataFileInfo{name: "1665560200_add_contact_verification_individual.up.sql", size: 509, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc5, 0xbb, 0x61, 0xfd, 0xbf, 0x33, 0x1d, 0x4e, 0x5f, 0xbd, 0x86, 0x42, 0xb0, 0x6c, 0xf7, 0x39, 0x19, 0x6e, 0x72, 0x35, 0xfd, 0x1b, 0xd6, 0xbd, 0xf6, 0x81, 0x21, 0xc4, 0xaa, 0x6, 0x62, 0x40}}
return a, nil
}
@ -1504,7 +1505,7 @@ func _1670921937_add_album_idUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1670921937_add_album_id.up.sql", size: 55, mode: os.FileMode(0644), modTime: time.Unix(1676035037, 0)}
info := bindataFileInfo{name: "1670921937_add_album_id.up.sql", size: 55, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0xae, 0x83, 0x58, 0xb7, 0x77, 0x5, 0xca, 0xe3, 0xda, 0x32, 0x8f, 0x7b, 0xa4, 0x2f, 0x4c, 0xaf, 0x5f, 0xfa, 0x94, 0x36, 0xe4, 0xf9, 0x7, 0xc6, 0xd6, 0xb7, 0x90, 0xf3, 0xe5, 0xb5, 0x3}}
return a, nil
}
@ -1524,7 +1525,7 @@ func _1673373000_add_repliedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1673373000_add_replied.up.sql", size: 67, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1673373000_add_replied.up.sql", size: 67, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd5, 0x1c, 0xae, 0xf2, 0xf, 0xb4, 0xc2, 0xba, 0x3c, 0xfe, 0x7b, 0xb0, 0xf, 0xf, 0xd5, 0xbc, 0xe2, 0xa7, 0xad, 0x50, 0xd9, 0x5a, 0xe8, 0x96, 0x22, 0x65, 0x89, 0xcf, 0x4a, 0x9a, 0x1b, 0x94}}
return a, nil
}
@ -1544,7 +1545,7 @@ func _1673428910_add_image_width_heightUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1673428910_add_image_width_height.up.sql", size: 117, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1673428910_add_image_width_height.up.sql", size: 117, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x74, 0xda, 0x93, 0x2a, 0x9b, 0x6b, 0xb7, 0x96, 0xcd, 0xac, 0xf, 0xaf, 0x54, 0x89, 0x9e, 0x91, 0x5b, 0xd0, 0x4a, 0xa, 0x8d, 0x9e, 0x80, 0x66, 0x26, 0x9e, 0xb5, 0xa9, 0x8, 0xec, 0x2d, 0x6c}}
return a, nil
}
@ -1564,7 +1565,7 @@ func _1674210659_add_contact_request_local_clockUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1674210659_add_contact_request_local_clock.up.sql", size: 691, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1674210659_add_contact_request_local_clock.up.sql", size: 691, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x92, 0x72, 0x39, 0xfe, 0x72, 0x98, 0xfc, 0x91, 0x20, 0x10, 0xe8, 0xf5, 0xac, 0x79, 0xa8, 0x1c, 0xca, 0x7b, 0x35, 0xa, 0xc1, 0x56, 0x49, 0x9a, 0xfc, 0xbd, 0x64, 0x9d, 0xdf, 0xd2, 0x60, 0x70}}
return a, nil
}
@ -1584,7 +1585,7 @@ func _1675212323_add_deleted_byUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675212323_add_deleted_by.up.sql", size: 57, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1675212323_add_deleted_by.up.sql", size: 57, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x85, 0x37, 0x29, 0x2f, 0xd, 0x5a, 0xb6, 0xdb, 0xa7, 0x8, 0x86, 0xfc, 0x7a, 0x70, 0xd8, 0x4d, 0xe6, 0xf0, 0x57, 0xe7, 0xd1, 0x95, 0xd5, 0x4, 0x40, 0x2f, 0x7a, 0x5, 0x4f, 0xc2, 0x97, 0xbc}}
return a, nil
}
@ -1604,7 +1605,7 @@ func _1675247084_add_activity_center_statesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675247084_add_activity_center_states.up.sql", size: 136, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1675247084_add_activity_center_states.up.sql", size: 136, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xba, 0x90, 0x7d, 0x55, 0xc7, 0x40, 0x29, 0x26, 0x97, 0x45, 0x5c, 0xdf, 0xba, 0x61, 0xb, 0xfc, 0x3d, 0x7a, 0x6c, 0x42, 0xe4, 0x95, 0x78, 0xb0, 0xc5, 0x1f, 0x73, 0xe9, 0x33, 0x51, 0xc8, 0x81}}
return a, nil
}
@ -1624,7 +1625,7 @@ func _1675272329_fix_protocol_migrationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675272329_fix_protocol_migration.up.sql", size: 183, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1675272329_fix_protocol_migration.up.sql", size: 183, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb6, 0xe0, 0x11, 0x4c, 0x66, 0x55, 0x72, 0xd3, 0xe6, 0x98, 0xa4, 0xe7, 0x44, 0xf9, 0x3b, 0x3a, 0x3f, 0xd9, 0x91, 0x1e, 0x4f, 0xfc, 0x56, 0x63, 0xe5, 0xa4, 0x83, 0xfc, 0x7c, 0xcf, 0x18, 0x99}}
return a, nil
}
@ -1644,7 +1645,7 @@ func _1676998418_fix_activity_center_migrationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1676998418_fix_activity_center_migration.up.sql", size: 178, mode: os.FileMode(0644), modTime: time.Unix(1678711803, 0)}
info := bindataFileInfo{name: "1676998418_fix_activity_center_migration.up.sql", size: 178, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8a, 0xdc, 0x64, 0xb1, 0x47, 0x67, 0xda, 0x2c, 0x26, 0x29, 0x6b, 0x6f, 0xb, 0xfa, 0x45, 0xf3, 0xad, 0x8b, 0x1a, 0x5f, 0x1c, 0xed, 0xd7, 0xea, 0x54, 0xf5, 0x3f, 0xb8, 0xf6, 0xf9, 0x44, 0x53}}
return a, nil
}
@ -1664,7 +1665,7 @@ func _1677278861_add_deleted_column_to_activity_center_notifications_tableUpSql(
return nil, err
}
info := bindataFileInfo{name: "1677278861_add_deleted_column_to_activity_center_notifications_table.up.sql", size: 381, mode: os.FileMode(0644), modTime: time.Unix(1678798710, 0)}
info := bindataFileInfo{name: "1677278861_add_deleted_column_to_activity_center_notifications_table.up.sql", size: 381, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x38, 0x3a, 0x95, 0xaf, 0x81, 0xb0, 0x85, 0x8d, 0x73, 0xda, 0x7b, 0x2a, 0x35, 0xa6, 0xaa, 0xcc, 0x4c, 0x35, 0xa3, 0xa8, 0xbd, 0xd1, 0x37, 0xe8, 0x5d, 0x83, 0xa4, 0x33, 0x1f, 0x10, 0xe4, 0xe6}}
return a, nil
}
@ -1684,7 +1685,7 @@ func _1677486338_add_community_tokens_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1677486338_add_community_tokens_table.up.sql", size: 527, mode: os.FileMode(0644), modTime: time.Unix(1678798710, 0)}
info := bindataFileInfo{name: "1677486338_add_community_tokens_table.up.sql", size: 527, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfb, 0x7b, 0x3d, 0x7e, 0x79, 0xc4, 0x3a, 0xf1, 0xda, 0x4b, 0xc6, 0xd1, 0xd, 0xfb, 0xb2, 0xb9, 0x7f, 0x81, 0x29, 0xab, 0xd8, 0x1, 0x20, 0xd7, 0xe1, 0xaf, 0x3e, 0x67, 0x1b, 0xdb, 0xf9, 0xd5}}
return a, nil
}
@ -1704,7 +1705,7 @@ func _1678292329_add_collapsed_categoriesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1678292329_add_collapsed_categories.up.sql", size: 170, mode: os.FileMode(0644), modTime: time.Unix(1678969310, 0)}
info := bindataFileInfo{name: "1678292329_add_collapsed_categories.up.sql", size: 170, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x46, 0x63, 0x86, 0xd5, 0x7, 0xe2, 0x25, 0x15, 0x1b, 0xfe, 0xf3, 0xe, 0x50, 0x48, 0x11, 0x3c, 0x7c, 0xc6, 0xe5, 0xab, 0x8d, 0x1f, 0xe8, 0x3c, 0xcb, 0xf0, 0x8d, 0xa7, 0x49, 0x4c, 0x16, 0x4f}}
return a, nil
}
@ -1724,11 +1725,31 @@ func _1678800760_add_index_to_raw_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1678800760_add_index_to_raw_messages.up.sql", size: 88, mode: os.FileMode(0644), modTime: time.Unix(1678969310, 0)}
info := bindataFileInfo{name: "1678800760_add_index_to_raw_messages.up.sql", size: 88, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9d, 0xd9, 0x8d, 0x22, 0x46, 0xae, 0x7b, 0x53, 0x3e, 0x51, 0x39, 0xad, 0xad, 0x38, 0x50, 0x6, 0xfa, 0xb9, 0xc4, 0x9f, 0x8d, 0xd2, 0x67, 0x0, 0xef, 0x58, 0x13, 0xab, 0x6a, 0x67, 0xf3, 0x7e}}
return a, nil
}
var __1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\xcc\xc1\xca\x82\x50\x10\xc5\xf1\xfd\x7d\x8a\xb3\x54\xf0\x0d\xbe\x95\x7e\x4c\x20\xdd\x34\x74\x02\x5d\x0d\xd2\x9d\xc5\x8d\x54\x72\xb4\xe7\x0f\xc2\x88\xd6\xe7\x7f\x7e\xff\x0d\xe5\x4c\xe0\xbc\xf0\x84\xf2\x80\xaa\x66\x50\x57\xb6\xdc\xe2\x3a\x8f\xe3\x36\xc5\x35\xaa\xc9\xa2\x8f\x4d\x6d\x35\x59\x67\xb9\xcd\x71\x92\x45\x9f\x3a\xdc\x35\xc8\x10\xc2\xa2\x66\x6a\x48\x1c\xb0\x77\x12\x03\x0a\x5f\x17\x6f\xae\xba\x78\x9f\x39\x60\x2f\xc1\xd4\xf1\xcf\x70\x6e\xca\x53\xde\xf4\x38\x52\x9f\x7c\x81\xec\x73\x48\x5d\xfa\xe7\x5e\x01\x00\x00\xff\xff\xbe\xbf\x0f\x39\xa8\x00\x00\x00")
func _1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSqlBytes() ([]byte, error) {
return bindataRead(
__1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql,
"1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql",
)
}
func _1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql() (*asset, error) {
bytes, err := _1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSqlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql", size: 168, mode: os.FileMode(0664), modTime: time.Unix(1679412171, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x82, 0x1, 0xb4, 0xb2, 0x94, 0x25, 0xd5, 0x2e, 0x45, 0xc3, 0xb1, 0x2c, 0xeb, 0x1a, 0x52, 0xe0, 0x4b, 0x9b, 0x46, 0xf4, 0xc, 0xac, 0x1, 0x1e, 0x90, 0xbc, 0x64, 0x38, 0x10, 0xf1, 0xaf, 0xac}}
return a, nil
}
var _readmeMd = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x91\xc1\xce\xd3\x30\x10\x84\xef\x7e\x8a\x91\x7a\x01\xa9\x2a\x8f\xc0\x0d\x71\x82\x03\x48\x1c\xc9\x36\x9e\x36\x96\x1c\x6f\xf0\xae\x93\xe6\xed\x91\xa3\xc2\xdf\xff\x66\xed\xd8\x33\xdf\x78\x4f\xa7\x13\xbe\xea\x06\x57\x6c\x35\x39\x31\xa7\x7b\x15\x4f\x5a\xec\x73\x08\xbf\x08\x2d\x79\x7f\x4a\x43\x5b\x86\x17\xfd\x8c\x21\xea\x56\x5e\x47\x90\x4a\x14\x75\x48\xde\x64\x37\x2c\x6a\x96\xae\x99\x48\x05\xf6\x27\x77\x13\xad\x08\xae\x8a\x51\xe7\x25\xf3\xf1\xa9\x9f\xf9\x58\x58\x2c\xad\xbc\xe0\x8b\x56\xf0\x21\x5d\xeb\x4c\x95\xb3\xae\x84\x60\xd4\xdc\xe6\x82\x5d\x1b\x36\x6d\x39\x62\x92\xf5\xb8\x11\xdb\x92\xd3\x28\xce\xe0\x13\xe1\x72\xcd\x3c\x63\xd4\x65\x87\xae\xac\xe8\xc3\x28\x2e\x67\x44\x66\x3a\x21\x25\xa2\x72\xac\x14\x67\xbc\x84\x9f\x53\x32\x8c\x52\x70\x25\x56\xd6\xfd\x8d\x05\x37\xad\x30\x9d\x9f\xa6\x86\x0f\xcd\x58\x7f\xcf\x34\x93\x3b\xed\x90\x9f\xa4\x1f\xcf\x30\x85\x4d\x07\x58\xaf\x7f\x25\xc4\x9d\xf3\x72\x64\x84\xd0\x7f\xf9\x9b\x3a\x2d\x84\xef\x85\x48\x66\x8d\xd8\x88\x9b\x8c\x8c\x98\x5b\xf6\x74\x14\x4e\x33\x0d\xc9\xe0\x93\x38\xda\x12\xc5\x69\xbd\xe4\xf0\x2e\x7a\x78\x07\x1c\xfe\x13\x9f\x91\x29\x31\x95\x7b\x7f\x62\x59\x37\xb4\xe5\x5e\x25\xfe\x33\xee\xd5\x53\x71\xd6\xda\x3a\xd8\xcb\xde\x2e\xf8\xa1\x90\x55\x53\x0c\xc7\xaa\x0d\xe9\x76\x14\x29\x1c\x7b\x68\xdd\x2f\xe1\x6f\x00\x00\x00\xff\xff\x3c\x0a\xc2\xfe\x2a\x02\x00\x00")
func readmeMdBytes() ([]byte, error) {
@ -1744,7 +1765,7 @@ func readmeMd() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1c, 0x6e, 0xfb, 0xcc, 0x81, 0x94, 0x4d, 0x8c, 0xa0, 0x3b, 0x5, 0xb0, 0x18, 0xd6, 0xbb, 0xb3, 0x79, 0xc8, 0x8f, 0xff, 0xc1, 0x10, 0xf9, 0xf, 0x20, 0x1b, 0x4a, 0x74, 0x96, 0x42, 0xd7, 0xa8}}
return a, nil
}
@ -1764,7 +1785,7 @@ func docGo() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0644), modTime: time.Unix(1652264632, 0)}
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0664), modTime: time.Unix(1679049664, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa0, 0xcc, 0x41, 0xe1, 0x61, 0x12, 0x97, 0xe, 0x36, 0x8c, 0xa7, 0x9e, 0xe0, 0x6e, 0x59, 0x9e, 0xee, 0xd5, 0x4a, 0xcf, 0x1e, 0x60, 0xd6, 0xc3, 0x3a, 0xc9, 0x6c, 0xf2, 0x86, 0x5a, 0xb4, 0x1e}}
return a, nil
}
@ -2018,6 +2039,8 @@ var _bindata = map[string]func() (*asset, error){
"1678800760_add_index_to_raw_messages.up.sql": _1678800760_add_index_to_raw_messagesUpSql,
"1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql": _1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql,
"README.md": readmeMd,
"doc.go": docGo,
@ -2143,6 +2166,7 @@ var _bintree = &bintree{nil, map[string]*bintree{
"1677486338_add_community_tokens_table.up.sql": &bintree{_1677486338_add_community_tokens_tableUpSql, map[string]*bintree{}},
"1678292329_add_collapsed_categories.up.sql": &bintree{_1678292329_add_collapsed_categoriesUpSql, map[string]*bintree{}},
"1678800760_add_index_to_raw_messages.up.sql": &bintree{_1678800760_add_index_to_raw_messagesUpSql, map[string]*bintree{}},
"1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql": &bintree{_1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql, map[string]*bintree{}},
"README.md": &bintree{readmeMd, map[string]*bintree{}},
"doc.go": &bintree{docGo, map[string]*bintree{}},
}}

View File

@ -0,0 +1,5 @@
CREATE TABLE IF NOT EXISTS communities_requests_to_join_revealed_addresses (
request_id BLOB NOT NULL,
address TEXT NOT NULL,
PRIMARY KEY(request_id, address)
);

View File

@ -885,14 +885,15 @@ func (m *CommunityInvitation) GetPublicKey() []byte {
}
type CommunityRequestToJoin struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
CommunityId []byte `protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
DisplayName string `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
CommunityId []byte `protobuf:"bytes,4,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
DisplayName string `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
RevealedAddresses map[string][]byte `protobuf:"bytes,6,rep,name=revealed_addresses,json=revealedAddresses,proto3" json:"revealed_addresses,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CommunityRequestToJoin) Reset() { *m = CommunityRequestToJoin{} }
@ -955,6 +956,13 @@ func (m *CommunityRequestToJoin) GetDisplayName() string {
return ""
}
func (m *CommunityRequestToJoin) GetRevealedAddresses() map[string][]byte {
if m != nil {
return m.RevealedAddresses
}
return nil
}
type CommunityCancelRequestToJoin struct {
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,2,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
@ -1537,6 +1545,7 @@ func init() {
proto.RegisterType((*CommunityCategory)(nil), "protobuf.CommunityCategory")
proto.RegisterType((*CommunityInvitation)(nil), "protobuf.CommunityInvitation")
proto.RegisterType((*CommunityRequestToJoin)(nil), "protobuf.CommunityRequestToJoin")
proto.RegisterMapType((map[string][]byte)(nil), "protobuf.CommunityRequestToJoin.RevealedAddressesEntry")
proto.RegisterType((*CommunityCancelRequestToJoin)(nil), "protobuf.CommunityCancelRequestToJoin")
proto.RegisterType((*CommunityRequestToJoinResponse)(nil), "protobuf.CommunityRequestToJoinResponse")
proto.RegisterType((*CommunityRequestToLeave)(nil), "protobuf.CommunityRequestToLeave")
@ -1554,120 +1563,122 @@ func init() {
}
var fileDescriptor_f937943d74c1cd8b = []byte{
// 1825 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x4f, 0x73, 0x23, 0x47,
0x15, 0xdf, 0x19, 0x49, 0xb6, 0xf4, 0x24, 0x79, 0xe5, 0xde, 0xb5, 0x3d, 0xf6, 0xee, 0xc6, 0xda,
0x01, 0x0a, 0xa7, 0x28, 0xb4, 0x44, 0x81, 0x62, 0x2b, 0x81, 0x24, 0x5a, 0x5b, 0xb5, 0x88, 0xb5,
0x24, 0xa7, 0x25, 0x13, 0x92, 0x02, 0xa6, 0xc6, 0x33, 0x6d, 0xb9, 0xcb, 0xd2, 0x8c, 0x98, 0x6e,
0xb9, 0x10, 0x07, 0x3e, 0x07, 0xf7, 0x5c, 0x38, 0x50, 0x7c, 0x05, 0x0e, 0x70, 0xe6, 0xce, 0x8d,
0x13, 0x95, 0x8f, 0x41, 0xf5, 0x9f, 0x19, 0xcd, 0xc8, 0x92, 0xbd, 0x54, 0xa0, 0x2a, 0x27, 0xcd,
0x7b, 0xfd, 0xfa, 0xfd, 0xfd, 0xf5, 0xeb, 0xd7, 0x82, 0x6d, 0x2f, 0x9c, 0x4c, 0x66, 0x01, 0xe5,
0x94, 0xb0, 0xc6, 0x34, 0x0a, 0x79, 0x88, 0x8a, 0xf2, 0xe7, 0x62, 0x76, 0x79, 0xf0, 0xc8, 0xbb,
0x72, 0xb9, 0x43, 0x7d, 0x12, 0x70, 0xca, 0xe7, 0x6a, 0xf9, 0xa0, 0x4c, 0x82, 0xd9, 0x44, 0xcb,
0xda, 0x37, 0x50, 0x78, 0x1d, 0xb9, 0x01, 0x47, 0xcf, 0xa1, 0x12, 0x6b, 0x9a, 0x3b, 0xd4, 0xb7,
0x8c, 0xba, 0x71, 0x54, 0xc1, 0xe5, 0x84, 0xd7, 0xf1, 0xd1, 0x13, 0x28, 0x4d, 0xc8, 0xe4, 0x82,
0x44, 0x62, 0xdd, 0x94, 0xeb, 0x45, 0xc5, 0xe8, 0xf8, 0x68, 0x0f, 0x36, 0xb5, 0x31, 0x2b, 0x57,
0x37, 0x8e, 0x4a, 0x78, 0x43, 0x90, 0x1d, 0x1f, 0x3d, 0x86, 0x82, 0x37, 0x0e, 0xbd, 0x6b, 0x2b,
0x5f, 0x37, 0x8e, 0xf2, 0x58, 0x11, 0xf6, 0x97, 0x06, 0x3c, 0x3c, 0x8e, 0x75, 0x77, 0xa5, 0x12,
0xf4, 0x23, 0x28, 0x44, 0xe1, 0x98, 0x30, 0xcb, 0xa8, 0xe7, 0x8e, 0xb6, 0x9a, 0x87, 0x8d, 0x38,
0x8e, 0xc6, 0x92, 0x64, 0x03, 0x0b, 0x31, 0xac, 0xa4, 0xed, 0xcf, 0xa1, 0x20, 0x69, 0x54, 0x83,
0xca, 0x79, 0xef, 0x4d, 0xaf, 0xff, 0x59, 0xcf, 0xc1, 0xfd, 0xd3, 0x76, 0xed, 0x01, 0xaa, 0x40,
0x51, 0x7c, 0x39, 0xad, 0xd3, 0xd3, 0x9a, 0x81, 0x76, 0x60, 0x5b, 0x52, 0xdd, 0x56, 0xaf, 0xf5,
0xba, 0xed, 0x9c, 0x0f, 0xda, 0x78, 0x50, 0x33, 0xd1, 0x3e, 0xec, 0x28, 0x76, 0xff, 0xa4, 0x8d,
0x5b, 0xc3, 0xb6, 0x73, 0xdc, 0xef, 0x0d, 0xdb, 0xbd, 0x61, 0x2d, 0x67, 0xff, 0xdb, 0x84, 0xdd,
0xc4, 0xf6, 0x30, 0xbc, 0x26, 0x41, 0x97, 0x70, 0xd7, 0x77, 0xb9, 0x8b, 0x2e, 0x01, 0x79, 0x61,
0xc0, 0x23, 0xd7, 0xe3, 0x8e, 0xeb, 0xfb, 0x11, 0x61, 0x4c, 0x7b, 0x5e, 0x6e, 0xfe, 0x78, 0x85,
0xe7, 0x99, 0xdd, 0x8d, 0x63, 0xbd, 0xb5, 0x15, 0xef, 0x6c, 0x07, 0x3c, 0x9a, 0xe3, 0x6d, 0x6f,
0x99, 0x8f, 0xea, 0x50, 0xf6, 0x09, 0xf3, 0x22, 0x3a, 0xe5, 0x34, 0x0c, 0x64, 0xda, 0x4b, 0x38,
0xcd, 0x12, 0x09, 0xa6, 0x13, 0x77, 0x44, 0x74, 0xde, 0x15, 0x81, 0x3e, 0x80, 0x12, 0x17, 0x26,
0x87, 0xf3, 0x29, 0x91, 0xa9, 0xdf, 0x6a, 0x3e, 0x5d, 0xe7, 0x96, 0x90, 0xc1, 0x0b, 0x71, 0xb4,
0x0b, 0x1b, 0x6c, 0x3e, 0xb9, 0x08, 0xc7, 0x56, 0x41, 0x95, 0x52, 0x51, 0x08, 0x41, 0x3e, 0x70,
0x27, 0xc4, 0xda, 0x90, 0x5c, 0xf9, 0x7d, 0x70, 0x22, 0x32, 0xb4, 0x2a, 0x18, 0x54, 0x83, 0xdc,
0x35, 0x99, 0x4b, 0x20, 0xe5, 0xb1, 0xf8, 0x14, 0x9e, 0xde, 0xb8, 0xe3, 0x19, 0xd1, 0x51, 0x28,
0xe2, 0x03, 0xf3, 0xa5, 0x61, 0xff, 0xcb, 0x80, 0xc7, 0x89, 0x4f, 0x67, 0x24, 0x9a, 0x50, 0xc6,
0x68, 0x18, 0x30, 0xb4, 0x0f, 0x45, 0x12, 0x30, 0x27, 0x0c, 0xc6, 0x4a, 0x53, 0x11, 0x6f, 0x92,
0x80, 0xf5, 0x83, 0xf1, 0x1c, 0x59, 0xb0, 0x39, 0x8d, 0xe8, 0x8d, 0xcb, 0x95, 0xbe, 0x22, 0x8e,
0x49, 0xf4, 0x53, 0xd8, 0x70, 0x3d, 0x8f, 0x30, 0x26, 0x53, 0xb2, 0xd5, 0xfc, 0xce, 0x8a, 0xc0,
0x53, 0x46, 0x1a, 0x2d, 0x29, 0x8c, 0xf5, 0x26, 0x7b, 0x08, 0x1b, 0x8a, 0x83, 0x10, 0x6c, 0xc5,
0x88, 0x6a, 0x1d, 0x1f, 0xb7, 0x07, 0x83, 0xda, 0x03, 0xb4, 0x0d, 0xd5, 0x5e, 0xdf, 0xe9, 0xb6,
0xbb, 0xaf, 0xda, 0x78, 0xf0, 0xb3, 0xce, 0x59, 0xcd, 0x40, 0x8f, 0xe0, 0x61, 0xa7, 0xf7, 0x8b,
0xce, 0xb0, 0x35, 0xec, 0xf4, 0x7b, 0x4e, 0xbf, 0x77, 0xfa, 0x79, 0xcd, 0x44, 0x5b, 0x00, 0xfd,
0x9e, 0x83, 0xdb, 0x9f, 0x9e, 0xb7, 0x07, 0x02, 0x4b, 0x5f, 0x99, 0x50, 0x95, 0xd9, 0x3e, 0x8e,
0x28, 0x27, 0x11, 0x75, 0xd1, 0xaf, 0xef, 0x80, 0x50, 0x63, 0xe1, 0x72, 0x66, 0xd3, 0x7f, 0x81,
0x9c, 0x1f, 0x40, 0x9e, 0x8b, 0xe2, 0x9b, 0x6f, 0x51, 0x7c, 0x29, 0x99, 0xaa, 0x7b, 0x6e, 0x65,
0xdd, 0xf3, 0x8b, 0xba, 0x0b, 0x59, 0x77, 0x12, 0xce, 0x02, 0x1e, 0x63, 0x44, 0x51, 0xa2, 0x49,
0x48, 0x20, 0x39, 0xd4, 0x67, 0xd6, 0x46, 0x3d, 0x77, 0x94, 0xc7, 0x45, 0xc9, 0xe8, 0xf8, 0x0c,
0x1d, 0x42, 0x59, 0x54, 0x73, 0xea, 0x72, 0x4e, 0xa2, 0xc0, 0xda, 0x94, 0x3b, 0x81, 0x04, 0xec,
0x4c, 0x71, 0xfe, 0x47, 0x68, 0xfa, 0xb3, 0x09, 0x56, 0x36, 0xc8, 0x45, 0xb5, 0xd1, 0x16, 0x98,
0xba, 0xbd, 0x95, 0xb0, 0x49, 0x7d, 0xf4, 0x61, 0x26, 0x4d, 0xdf, 0x5d, 0x97, 0xa6, 0x85, 0x86,
0x46, 0x2a, 0x63, 0x1f, 0xc1, 0x96, 0x8a, 0xd6, 0xd3, 0xf5, 0xb1, 0x72, 0xb2, 0x7c, 0x7b, 0x6b,
0xca, 0x87, 0xab, 0x3c, 0x03, 0x81, 0x7d, 0x28, 0xea, 0xae, 0xc9, 0xac, 0x7c, 0x3d, 0x77, 0x54,
0xc2, 0x9b, 0xaa, 0x6d, 0x32, 0xf4, 0x0c, 0x80, 0x32, 0x27, 0x46, 0x78, 0x41, 0x22, 0xbc, 0x44,
0xd9, 0x99, 0x62, 0xd8, 0x1d, 0xc8, 0xcb, 0xb3, 0xfa, 0x14, 0xac, 0x18, 0xa2, 0xc3, 0xfe, 0x9b,
0x76, 0xcf, 0x39, 0x6b, 0xe3, 0x6e, 0x67, 0x30, 0xe8, 0xf4, 0x7b, 0xb5, 0x07, 0xa2, 0x25, 0xbe,
0x6a, 0x1f, 0xf7, 0xbb, 0x6d, 0xa7, 0x75, 0xd2, 0xed, 0xf4, 0x6a, 0x86, 0x80, 0xaf, 0xe6, 0x28,
0x08, 0xd7, 0x4c, 0xfb, 0xef, 0xa5, 0xd4, 0xe1, 0x3b, 0xc9, 0x76, 0x16, 0xd5, 0xba, 0x8d, 0x54,
0xeb, 0x46, 0x6d, 0xd8, 0x54, 0x5d, 0x9f, 0x59, 0xa6, 0x0c, 0xf6, 0x7b, 0x2b, 0x72, 0x96, 0x52,
0xd3, 0x50, 0x4d, 0x5b, 0x03, 0x35, 0xde, 0x8b, 0x3e, 0x81, 0xf2, 0x74, 0x71, 0x06, 0x25, 0xe2,
0xca, 0xcd, 0x77, 0xee, 0x3e, 0xa9, 0x38, 0xbd, 0x05, 0x35, 0xa1, 0x18, 0x5f, 0x6d, 0x32, 0x3f,
0xe5, 0xe6, 0x6e, 0x6a, 0xbb, 0x4c, 0xa3, 0x5a, 0xc5, 0x89, 0x1c, 0xfa, 0x18, 0x0a, 0x22, 0xc1,
0x0a, 0x9a, 0xe5, 0xe6, 0xbb, 0xf7, 0xb8, 0x2e, 0xb4, 0x68, 0xc7, 0xd5, 0x3e, 0x51, 0xb1, 0x0b,
0x37, 0x70, 0xc6, 0x94, 0x71, 0x6b, 0x53, 0x55, 0xec, 0xc2, 0x0d, 0x4e, 0x29, 0xe3, 0xa8, 0x07,
0xe0, 0xb9, 0x9c, 0x8c, 0xc2, 0x88, 0x12, 0x66, 0x15, 0x97, 0xcf, 0xf1, 0x6a, 0x03, 0xc9, 0x06,
0x65, 0x25, 0xa5, 0x01, 0xbd, 0x04, 0xcb, 0x8d, 0xbc, 0x2b, 0x7a, 0x43, 0x9c, 0x89, 0x3b, 0x0a,
0x08, 0x1f, 0xd3, 0xe0, 0xda, 0x51, 0x15, 0x29, 0xc9, 0x8a, 0xec, 0xea, 0xf5, 0x6e, 0xb2, 0x7c,
0x2c, 0x4b, 0xf4, 0x1a, 0xb6, 0x5c, 0x7f, 0x42, 0x03, 0x87, 0x11, 0xce, 0x69, 0x30, 0x62, 0x16,
0xc8, 0xfc, 0xd4, 0x57, 0x78, 0xd3, 0x12, 0x82, 0x03, 0x2d, 0x87, 0xab, 0x6e, 0x9a, 0x44, 0xdf,
0x82, 0x2a, 0x0d, 0x78, 0x14, 0x3a, 0x13, 0xc2, 0x98, 0xb8, 0x63, 0xca, 0xf2, 0xdc, 0x54, 0x24,
0xb3, 0xab, 0x78, 0x42, 0x28, 0x9c, 0xa5, 0x85, 0x2a, 0x4a, 0x48, 0x32, 0x63, 0xa1, 0xa7, 0x50,
0x22, 0x81, 0x17, 0xcd, 0xa7, 0x9c, 0xf8, 0x56, 0x55, 0xa1, 0x39, 0x61, 0x88, 0x0e, 0xc3, 0xdd,
0x11, 0xb3, 0xb6, 0x64, 0x46, 0xe5, 0x37, 0x72, 0x61, 0x5b, 0x9d, 0xad, 0x34, 0x4c, 0x1e, 0xca,
0xac, 0xfe, 0xf0, 0x9e, 0xac, 0x2e, 0x9d, 0x58, 0x9d, 0xdb, 0x1a, 0x5f, 0x62, 0xa3, 0x5f, 0xc1,
0xfe, 0x62, 0xe8, 0x91, 0xab, 0xcc, 0x99, 0xe8, 0x3b, 0xda, 0xaa, 0x49, 0x53, 0xf5, 0xfb, 0xee,
0x72, 0xbc, 0xe7, 0x65, 0xf8, 0x2c, 0x5e, 0x38, 0x38, 0x87, 0x4a, 0x1a, 0xfa, 0xe9, 0x16, 0x56,
0x52, 0x2d, 0xec, 0x45, 0xba, 0x85, 0x95, 0x9b, 0xfb, 0x6b, 0x27, 0x9e, 0x54, 0x77, 0x3b, 0xf8,
0x14, 0x60, 0x01, 0xcb, 0x15, 0x4a, 0xbf, 0x9f, 0x55, 0xba, 0xb7, 0x42, 0xa9, 0xd8, 0x9f, 0x56,
0xf9, 0x05, 0x3c, 0x5c, 0x02, 0xe2, 0x0a, 0xbd, 0xef, 0x65, 0xf5, 0x3e, 0x59, 0xa5, 0x57, 0x29,
0x99, 0xa7, 0x75, 0x8f, 0x60, 0x67, 0x65, 0x39, 0x56, 0x58, 0x78, 0x99, 0xb5, 0x60, 0xdf, 0xdf,
0x8b, 0xd3, 0x5d, 0xff, 0x37, 0xa9, 0x59, 0x2d, 0x03, 0x6a, 0x74, 0x02, 0x87, 0x53, 0x1a, 0xc4,
0xf0, 0x74, 0xdc, 0xf1, 0xd8, 0xd1, 0x5d, 0xc8, 0x21, 0x81, 0x7b, 0x31, 0x26, 0xbe, 0x9e, 0x2d,
0x9e, 0x4c, 0x69, 0xa0, 0x01, 0xdb, 0x1a, 0x8f, 0x93, 0xe2, 0x49, 0x11, 0xfb, 0x9f, 0x26, 0x54,
0x33, 0x19, 0x44, 0x1f, 0x2d, 0x3a, 0xa1, 0xba, 0xb5, 0xbf, 0xbd, 0x26, 0xd7, 0x6f, 0xd7, 0x02,
0xcd, 0xaf, 0xd7, 0x02, 0x73, 0x6f, 0xd9, 0x02, 0x0f, 0xa1, 0xac, 0x9b, 0x8c, 0x1c, 0xf4, 0xd5,
0xa5, 0x1e, 0xf7, 0x1d, 0x31, 0xe7, 0x1f, 0x40, 0x71, 0x1a, 0x32, 0x2a, 0xe7, 0x4d, 0xd1, 0x57,
0x0b, 0x38, 0xa1, 0xff, 0x4f, 0x98, 0xb6, 0x7d, 0xd8, 0xbe, 0x05, 0xa2, 0x65, 0x47, 0x8d, 0x5b,
0x8e, 0xc6, 0x73, 0x89, 0x99, 0x9a, 0x4b, 0xd2, 0xce, 0xe7, 0xb2, 0xce, 0xdb, 0x7f, 0x34, 0xe0,
0x51, 0x62, 0xa6, 0x13, 0xdc, 0x50, 0xee, 0xca, 0x7b, 0xee, 0x7d, 0xd8, 0x59, 0xb4, 0x81, 0xf4,
0xb4, 0xad, 0x1e, 0x41, 0x8f, 0xbd, 0x35, 0x97, 0xe3, 0x48, 0xbc, 0x9c, 0xf4, 0x4b, 0x48, 0x11,
0xeb, 0x9f, 0x41, 0xcf, 0x00, 0xa6, 0xb3, 0x8b, 0x31, 0xf5, 0x1c, 0x91, 0xaf, 0xbc, 0xdc, 0x53,
0x52, 0x9c, 0x37, 0x64, 0x6e, 0xff, 0xc9, 0x48, 0xa1, 0x17, 0x93, 0xdf, 0xce, 0x08, 0xe3, 0xc3,
0xf0, 0xe7, 0x21, 0x5d, 0x77, 0x0b, 0xeb, 0xc1, 0x38, 0x15, 0xbf, 0x18, 0x8c, 0x7b, 0x22, 0x05,
0x6b, 0x7d, 0x58, 0x7e, 0xe3, 0xe5, 0x6f, 0xbf, 0xf1, 0x9e, 0x43, 0xc5, 0xa7, 0x6c, 0x3a, 0x76,
0xe7, 0x4a, 0x75, 0x41, 0xbf, 0x37, 0x14, 0x4f, 0xa8, 0xb7, 0xff, 0x62, 0xc0, 0xd3, 0x54, 0xb1,
0x02, 0x8f, 0x8c, 0xbf, 0xd9, 0x0e, 0x7f, 0x65, 0xc0, 0x3b, 0xab, 0x73, 0x8b, 0x09, 0x9b, 0x86,
0x01, 0x23, 0x6b, 0x5c, 0xfe, 0x09, 0x94, 0x12, 0x53, 0x77, 0x9c, 0xce, 0x14, 0x2a, 0xf0, 0x62,
0x83, 0x40, 0xa2, 0x78, 0x50, 0xc8, 0x0b, 0x2f, 0x27, 0xdb, 0x4b, 0x42, 0x2f, 0xc0, 0x93, 0x4f,
0x83, 0x67, 0x39, 0xdc, 0xc2, 0xed, 0x70, 0x9f, 0x01, 0xa8, 0x59, 0xc0, 0x99, 0x45, 0x54, 0x3f,
0xc4, 0x4a, 0x8a, 0x73, 0x1e, 0x51, 0x1b, 0xc3, 0xde, 0xed, 0x48, 0x4f, 0x89, 0x7b, 0xb3, 0x2e,
0xc4, 0x65, 0x93, 0xe6, 0x2d, 0x93, 0xf6, 0x2f, 0xe1, 0x79, 0xea, 0xe4, 0xaa, 0xe6, 0xb8, 0x3c,
0x76, 0xac, 0xd1, 0x9e, 0xf5, 0xd6, 0x5c, 0xf6, 0xf6, 0xaf, 0x06, 0x94, 0x3f, 0x73, 0xaf, 0x67,
0xf1, 0x8c, 0x50, 0x83, 0x1c, 0xa3, 0x23, 0x7d, 0xea, 0xc4, 0xa7, 0x98, 0x1a, 0x38, 0x9d, 0x10,
0xc6, 0xdd, 0xc9, 0x54, 0xee, 0xcf, 0xe3, 0x05, 0x43, 0x18, 0xe5, 0xe1, 0x94, 0x7a, 0x32, 0xbd,
0x15, 0xac, 0x08, 0xf9, 0x2e, 0x74, 0xe7, 0xe3, 0xd0, 0x8d, 0xf1, 0x12, 0x93, 0x6a, 0xc5, 0xf7,
0x69, 0x30, 0xd2, 0xa9, 0x8d, 0x49, 0xd1, 0x49, 0xae, 0x5c, 0x76, 0x25, 0x13, 0x5a, 0xc1, 0xf2,
0x1b, 0xd9, 0x50, 0xe1, 0x57, 0x34, 0xf2, 0xcf, 0xdc, 0x48, 0xe4, 0x41, 0xbf, 0x56, 0x32, 0x3c,
0xfb, 0x0f, 0x70, 0x90, 0x0a, 0x20, 0x4e, 0x4b, 0xfc, 0x1f, 0x81, 0x05, 0x9b, 0x37, 0x24, 0x62,
0x71, 0x27, 0xa9, 0xe2, 0x98, 0x14, 0xf6, 0x2e, 0xa3, 0x70, 0xa2, 0x43, 0x92, 0xdf, 0xe2, 0x61,
0xc2, 0x43, 0x19, 0x4a, 0x1e, 0x9b, 0x3c, 0x14, 0xf6, 0xc5, 0xa3, 0x8e, 0x04, 0x7c, 0x28, 0x83,
0x14, 0xef, 0x83, 0x0a, 0xce, 0xf0, 0xec, 0x2f, 0x0d, 0x40, 0xb7, 0x1d, 0xb8, 0xc3, 0xf0, 0x27,
0x50, 0x4c, 0x06, 0x1c, 0x85, 0xe8, 0xd4, 0x9d, 0xb5, 0x3e, 0x14, 0x9c, 0xec, 0x42, 0xef, 0x09,
0x0d, 0x52, 0x86, 0xe9, 0xc7, 0xce, 0xce, 0x4a, 0x0d, 0x38, 0x11, 0xb3, 0xff, 0x66, 0xc0, 0xe1,
0x6d, 0xdd, 0x9d, 0xc0, 0x27, 0xbf, 0x7b, 0x8b, 0x5c, 0x7d, 0x7d, 0x97, 0x77, 0x61, 0x23, 0xbc,
0xbc, 0x64, 0x84, 0xeb, 0xec, 0x6a, 0x4a, 0x54, 0x81, 0xd1, 0xdf, 0x13, 0xfd, 0xcf, 0x94, 0xfc,
0x5e, 0xc6, 0x48, 0x3e, 0xc1, 0x88, 0xfd, 0x0f, 0x03, 0xf6, 0xd6, 0x44, 0x81, 0xde, 0x40, 0x51,
0x8f, 0xe2, 0xf1, 0x28, 0xf0, 0xe2, 0x2e, 0x1f, 0xe5, 0xa6, 0x86, 0x26, 0xf4, 0x54, 0x90, 0x28,
0x38, 0xb8, 0x84, 0x6a, 0x66, 0x69, 0xc5, 0x25, 0xfb, 0x71, 0xf6, 0x92, 0x7d, 0xf7, 0x5e, 0x63,
0x49, 0x56, 0x16, 0x97, 0xee, 0xab, 0xea, 0x17, 0xe5, 0xc6, 0x8b, 0x0f, 0xe3, 0x9d, 0x17, 0x1b,
0xf2, 0xeb, 0xfd, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0x49, 0xe0, 0x77, 0x13, 0x52, 0x14, 0x00,
0x00,
// 1864 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x4f, 0x6f, 0x23, 0x49,
0x15, 0x9f, 0xf6, 0x9f, 0xc4, 0x7e, 0xb6, 0x33, 0x4e, 0xcd, 0x24, 0xe9, 0x64, 0x66, 0x36, 0x99,
0x06, 0x44, 0x56, 0x08, 0x0f, 0x9b, 0x05, 0x31, 0xda, 0x85, 0xdd, 0xf5, 0x24, 0xd6, 0x60, 0x26,
0xb6, 0xb3, 0x15, 0x87, 0x65, 0x57, 0x40, 0xab, 0xd2, 0x5d, 0x49, 0x4a, 0xb1, 0xbb, 0x4d, 0x57,
0x39, 0xc2, 0x1c, 0xf8, 0x1c, 0xdc, 0xf7, 0x8a, 0xf8, 0x0a, 0x1c, 0xe0, 0xcc, 0x11, 0x89, 0x1b,
0x27, 0xb4, 0x1f, 0x03, 0xd5, 0x9f, 0x6e, 0x77, 0x3b, 0xed, 0x64, 0xd0, 0x82, 0xb4, 0x27, 0xf7,
0x7b, 0xf5, 0xde, 0xab, 0xf7, 0xe7, 0x57, 0xaf, 0x5e, 0x19, 0xd6, 0xbd, 0x70, 0x3c, 0x9e, 0x06,
0x4c, 0x30, 0xca, 0x5b, 0x93, 0x28, 0x14, 0x21, 0xaa, 0xa8, 0x9f, 0xf3, 0xe9, 0xc5, 0xce, 0x23,
0xef, 0x8a, 0x08, 0x97, 0xf9, 0x34, 0x10, 0x4c, 0xcc, 0xf4, 0xf2, 0x4e, 0x8d, 0x06, 0xd3, 0xb1,
0x91, 0x75, 0x6e, 0xa0, 0xfc, 0x3a, 0x22, 0x81, 0x40, 0xcf, 0xa1, 0x1e, 0x5b, 0x9a, 0xb9, 0xcc,
0xb7, 0xad, 0x3d, 0x6b, 0xbf, 0x8e, 0x6b, 0x09, 0xaf, 0xeb, 0xa3, 0x27, 0x50, 0x1d, 0xd3, 0xf1,
0x39, 0x8d, 0xe4, 0x7a, 0x41, 0xad, 0x57, 0x34, 0xa3, 0xeb, 0xa3, 0x2d, 0x58, 0x35, 0x9b, 0xd9,
0xc5, 0x3d, 0x6b, 0xbf, 0x8a, 0x57, 0x24, 0xd9, 0xf5, 0xd1, 0x63, 0x28, 0x7b, 0xa3, 0xd0, 0xbb,
0xb6, 0x4b, 0x7b, 0xd6, 0x7e, 0x09, 0x6b, 0xc2, 0xf9, 0xd2, 0x82, 0x87, 0x87, 0xb1, 0xed, 0x9e,
0x32, 0x82, 0x7e, 0x04, 0xe5, 0x28, 0x1c, 0x51, 0x6e, 0x5b, 0x7b, 0xc5, 0xfd, 0xb5, 0x83, 0xdd,
0x56, 0x1c, 0x47, 0x6b, 0x41, 0xb2, 0x85, 0xa5, 0x18, 0xd6, 0xd2, 0xce, 0xe7, 0x50, 0x56, 0x34,
0x6a, 0x42, 0xfd, 0xac, 0xff, 0xa6, 0x3f, 0xf8, 0xac, 0xef, 0xe2, 0xc1, 0x71, 0xa7, 0xf9, 0x00,
0xd5, 0xa1, 0x22, 0xbf, 0xdc, 0xf6, 0xf1, 0x71, 0xd3, 0x42, 0x1b, 0xb0, 0xae, 0xa8, 0x5e, 0xbb,
0xdf, 0x7e, 0xdd, 0x71, 0xcf, 0x4e, 0x3b, 0xf8, 0xb4, 0x59, 0x40, 0xdb, 0xb0, 0xa1, 0xd9, 0x83,
0xa3, 0x0e, 0x6e, 0x0f, 0x3b, 0xee, 0xe1, 0xa0, 0x3f, 0xec, 0xf4, 0x87, 0xcd, 0xa2, 0xf3, 0xef,
0x02, 0x6c, 0x26, 0x7b, 0x0f, 0xc3, 0x6b, 0x1a, 0xf4, 0xa8, 0x20, 0x3e, 0x11, 0x04, 0x5d, 0x00,
0xf2, 0xc2, 0x40, 0x44, 0xc4, 0x13, 0x2e, 0xf1, 0xfd, 0x88, 0x72, 0x6e, 0x3c, 0xaf, 0x1d, 0xfc,
0x38, 0xc7, 0xf3, 0x8c, 0x76, 0xeb, 0xd0, 0xa8, 0xb6, 0x63, 0xcd, 0x4e, 0x20, 0xa2, 0x19, 0x5e,
0xf7, 0x16, 0xf9, 0x68, 0x0f, 0x6a, 0x3e, 0xe5, 0x5e, 0xc4, 0x26, 0x82, 0x85, 0x81, 0x4a, 0x7b,
0x15, 0xa7, 0x59, 0x32, 0xc1, 0x6c, 0x4c, 0x2e, 0xa9, 0xc9, 0xbb, 0x26, 0xd0, 0x07, 0x50, 0x15,
0x72, 0xcb, 0xe1, 0x6c, 0x42, 0x55, 0xea, 0xd7, 0x0e, 0x9e, 0x2e, 0x73, 0x4b, 0xca, 0xe0, 0xb9,
0x38, 0xda, 0x84, 0x15, 0x3e, 0x1b, 0x9f, 0x87, 0x23, 0xbb, 0xac, 0x4b, 0xa9, 0x29, 0x84, 0xa0,
0x14, 0x90, 0x31, 0xb5, 0x57, 0x14, 0x57, 0x7d, 0xef, 0x1c, 0xc9, 0x0c, 0xe5, 0x05, 0x83, 0x9a,
0x50, 0xbc, 0xa6, 0x33, 0x05, 0xa4, 0x12, 0x96, 0x9f, 0xd2, 0xd3, 0x1b, 0x32, 0x9a, 0x52, 0x13,
0x85, 0x26, 0x3e, 0x28, 0xbc, 0xb4, 0x9c, 0x7f, 0x59, 0xf0, 0x38, 0xf1, 0xe9, 0x84, 0x46, 0x63,
0xc6, 0x39, 0x0b, 0x03, 0x8e, 0xb6, 0xa1, 0x42, 0x03, 0xee, 0x86, 0xc1, 0x48, 0x5b, 0xaa, 0xe0,
0x55, 0x1a, 0xf0, 0x41, 0x30, 0x9a, 0x21, 0x1b, 0x56, 0x27, 0x11, 0xbb, 0x21, 0x42, 0xdb, 0xab,
0xe0, 0x98, 0x44, 0x3f, 0x85, 0x15, 0xe2, 0x79, 0x94, 0x73, 0x95, 0x92, 0xb5, 0x83, 0xef, 0xe4,
0x04, 0x9e, 0xda, 0xa4, 0xd5, 0x56, 0xc2, 0xd8, 0x28, 0x39, 0x43, 0x58, 0xd1, 0x1c, 0x84, 0x60,
0x2d, 0x46, 0x54, 0xfb, 0xf0, 0xb0, 0x73, 0x7a, 0xda, 0x7c, 0x80, 0xd6, 0xa1, 0xd1, 0x1f, 0xb8,
0xbd, 0x4e, 0xef, 0x55, 0x07, 0x9f, 0xfe, 0xac, 0x7b, 0xd2, 0xb4, 0xd0, 0x23, 0x78, 0xd8, 0xed,
0xff, 0xa2, 0x3b, 0x6c, 0x0f, 0xbb, 0x83, 0xbe, 0x3b, 0xe8, 0x1f, 0x7f, 0xde, 0x2c, 0xa0, 0x35,
0x80, 0x41, 0xdf, 0xc5, 0x9d, 0x4f, 0xcf, 0x3a, 0xa7, 0x12, 0x4b, 0x5f, 0x15, 0xa0, 0xa1, 0xb2,
0x7d, 0x18, 0x31, 0x41, 0x23, 0x46, 0xd0, 0xaf, 0xef, 0x80, 0x50, 0x6b, 0xee, 0x72, 0x46, 0xe9,
0xbf, 0x40, 0xce, 0x0f, 0xa0, 0x24, 0x64, 0xf1, 0x0b, 0x6f, 0x51, 0x7c, 0x25, 0x99, 0xaa, 0x7b,
0x31, 0xb7, 0xee, 0xa5, 0x79, 0xdd, 0xa5, 0x2c, 0x19, 0x87, 0xd3, 0x40, 0xc4, 0x18, 0xd1, 0x94,
0x6c, 0x12, 0x0a, 0x48, 0x2e, 0xf3, 0xb9, 0xbd, 0xb2, 0x57, 0xdc, 0x2f, 0xe1, 0x8a, 0x62, 0x74,
0x7d, 0x8e, 0x76, 0xa1, 0x26, 0xab, 0x39, 0x21, 0x42, 0xd0, 0x28, 0xb0, 0x57, 0x95, 0x26, 0xd0,
0x80, 0x9f, 0x68, 0xce, 0xff, 0x08, 0x4d, 0x7f, 0x2a, 0x80, 0x9d, 0x0d, 0x72, 0x5e, 0x6d, 0xb4,
0x06, 0x05, 0xd3, 0xde, 0xaa, 0xb8, 0xc0, 0x7c, 0xf4, 0x61, 0x26, 0x4d, 0xdf, 0x5d, 0x96, 0xa6,
0xb9, 0x85, 0x56, 0x2a, 0x63, 0x1f, 0xc1, 0x9a, 0x8e, 0xd6, 0x33, 0xf5, 0xb1, 0x8b, 0xaa, 0x7c,
0x5b, 0x4b, 0xca, 0x87, 0x1b, 0x22, 0x03, 0x81, 0x6d, 0xa8, 0x98, 0xae, 0xc9, 0xed, 0xd2, 0x5e,
0x71, 0xbf, 0x8a, 0x57, 0x75, 0xdb, 0xe4, 0xe8, 0x19, 0x00, 0xe3, 0x6e, 0x8c, 0xf0, 0xb2, 0x42,
0x78, 0x95, 0xf1, 0x13, 0xcd, 0x70, 0xba, 0x50, 0x52, 0x67, 0xf5, 0x29, 0xd8, 0x31, 0x44, 0x87,
0x83, 0x37, 0x9d, 0xbe, 0x7b, 0xd2, 0xc1, 0xbd, 0xee, 0xe9, 0x69, 0x77, 0xd0, 0x6f, 0x3e, 0x90,
0x2d, 0xf1, 0x55, 0xe7, 0x70, 0xd0, 0xeb, 0xb8, 0xed, 0xa3, 0x5e, 0xb7, 0xdf, 0xb4, 0x24, 0x7c,
0x0d, 0x47, 0x43, 0xb8, 0x59, 0x70, 0xfe, 0x56, 0x4d, 0x1d, 0xbe, 0xa3, 0x6c, 0x67, 0xd1, 0xad,
0xdb, 0x4a, 0xb5, 0x6e, 0xd4, 0x81, 0x55, 0xdd, 0xf5, 0xb9, 0x5d, 0x50, 0xc1, 0x7e, 0x2f, 0x27,
0x67, 0x29, 0x33, 0x2d, 0xdd, 0xb4, 0x0d, 0x50, 0x63, 0x5d, 0xf4, 0x09, 0xd4, 0x26, 0xf3, 0x33,
0xa8, 0x10, 0x57, 0x3b, 0x78, 0xe7, 0xee, 0x93, 0x8a, 0xd3, 0x2a, 0xe8, 0x00, 0x2a, 0xf1, 0xd5,
0xa6, 0xf2, 0x53, 0x3b, 0xd8, 0x4c, 0xa9, 0xab, 0x34, 0xea, 0x55, 0x9c, 0xc8, 0xa1, 0x8f, 0xa1,
0x2c, 0x13, 0xac, 0xa1, 0x59, 0x3b, 0x78, 0xf7, 0x1e, 0xd7, 0xa5, 0x15, 0xe3, 0xb8, 0xd6, 0x93,
0x15, 0x3b, 0x27, 0x81, 0x3b, 0x62, 0x5c, 0xd8, 0xab, 0xba, 0x62, 0xe7, 0x24, 0x38, 0x66, 0x5c,
0xa0, 0x3e, 0x80, 0x47, 0x04, 0xbd, 0x0c, 0x23, 0x46, 0xb9, 0x5d, 0x59, 0x3c, 0xc7, 0xf9, 0x1b,
0x24, 0x0a, 0x7a, 0x97, 0x94, 0x05, 0xf4, 0x12, 0x6c, 0x12, 0x79, 0x57, 0xec, 0x86, 0xba, 0x63,
0x72, 0x19, 0x50, 0x31, 0x62, 0xc1, 0xb5, 0xab, 0x2b, 0x52, 0x55, 0x15, 0xd9, 0x34, 0xeb, 0xbd,
0x64, 0xf9, 0x50, 0x95, 0xe8, 0x35, 0xac, 0x11, 0x7f, 0xcc, 0x02, 0x97, 0x53, 0x21, 0x58, 0x70,
0xc9, 0x6d, 0x50, 0xf9, 0xd9, 0xcb, 0xf1, 0xa6, 0x2d, 0x05, 0x4f, 0x8d, 0x1c, 0x6e, 0x90, 0x34,
0x89, 0xbe, 0x05, 0x0d, 0x16, 0x88, 0x28, 0x74, 0xc7, 0x94, 0x73, 0x79, 0xc7, 0xd4, 0xd4, 0xb9,
0xa9, 0x2b, 0x66, 0x4f, 0xf3, 0xa4, 0x50, 0x38, 0x4d, 0x0b, 0xd5, 0xb5, 0x90, 0x62, 0xc6, 0x42,
0x4f, 0xa1, 0x4a, 0x03, 0x2f, 0x9a, 0x4d, 0x04, 0xf5, 0xed, 0x86, 0x46, 0x73, 0xc2, 0x90, 0x1d,
0x46, 0x90, 0x4b, 0x6e, 0xaf, 0xa9, 0x8c, 0xaa, 0x6f, 0x44, 0x60, 0x5d, 0x9f, 0xad, 0x34, 0x4c,
0x1e, 0xaa, 0xac, 0xfe, 0xf0, 0x9e, 0xac, 0x2e, 0x9c, 0x58, 0x93, 0xdb, 0xa6, 0x58, 0x60, 0xa3,
0x5f, 0xc1, 0xf6, 0x7c, 0xe8, 0x51, 0xab, 0xdc, 0x1d, 0x9b, 0x3b, 0xda, 0x6e, 0xaa, 0xad, 0xf6,
0xee, 0xbb, 0xcb, 0xf1, 0x96, 0x97, 0xe1, 0xf3, 0x78, 0x61, 0xe7, 0x0c, 0xea, 0x69, 0xe8, 0xa7,
0x5b, 0x58, 0x55, 0xb7, 0xb0, 0x17, 0xe9, 0x16, 0x56, 0x3b, 0xd8, 0x5e, 0x3a, 0xf1, 0xa4, 0xba,
0xdb, 0xce, 0xa7, 0x00, 0x73, 0x58, 0xe6, 0x18, 0xfd, 0x7e, 0xd6, 0xe8, 0x56, 0x8e, 0x51, 0xa9,
0x9f, 0x36, 0xf9, 0x05, 0x3c, 0x5c, 0x00, 0x62, 0x8e, 0xdd, 0xf7, 0xb2, 0x76, 0x9f, 0xe4, 0xd9,
0xd5, 0x46, 0x66, 0x69, 0xdb, 0x97, 0xb0, 0x91, 0x5b, 0x8e, 0x9c, 0x1d, 0x5e, 0x66, 0x77, 0x70,
0xee, 0xef, 0xc5, 0xe9, 0xae, 0xff, 0x9b, 0xd4, 0xac, 0x96, 0x01, 0x35, 0x3a, 0x82, 0xdd, 0x09,
0x0b, 0x62, 0x78, 0xba, 0x64, 0x34, 0x72, 0x4d, 0x17, 0x72, 0x69, 0x40, 0xce, 0x47, 0xd4, 0x37,
0xb3, 0xc5, 0x93, 0x09, 0x0b, 0x0c, 0x60, 0xdb, 0xa3, 0x51, 0x52, 0x3c, 0x25, 0xe2, 0xfc, 0xb3,
0x00, 0x8d, 0x4c, 0x06, 0xd1, 0x47, 0xf3, 0x4e, 0xa8, 0x6f, 0xed, 0x6f, 0x2f, 0xc9, 0xf5, 0xdb,
0xb5, 0xc0, 0xc2, 0xd7, 0x6b, 0x81, 0xc5, 0xb7, 0x6c, 0x81, 0xbb, 0x50, 0x33, 0x4d, 0x46, 0x0d,
0xfa, 0xfa, 0x52, 0x8f, 0xfb, 0x8e, 0x9c, 0xf3, 0x77, 0xa0, 0x32, 0x09, 0x39, 0x53, 0xf3, 0xa6,
0xec, 0xab, 0x65, 0x9c, 0xd0, 0xff, 0x27, 0x4c, 0x3b, 0x3e, 0xac, 0xdf, 0x02, 0xd1, 0xa2, 0xa3,
0xd6, 0x2d, 0x47, 0xe3, 0xb9, 0xa4, 0x90, 0x9a, 0x4b, 0xd2, 0xce, 0x17, 0xb3, 0xce, 0x3b, 0x7f,
0xb4, 0xe0, 0x51, 0xb2, 0x4d, 0x37, 0xb8, 0x61, 0x82, 0xa8, 0x7b, 0xee, 0x7d, 0xd8, 0x98, 0xb7,
0x81, 0xf4, 0xb4, 0xad, 0x1f, 0x41, 0x8f, 0xbd, 0x25, 0x97, 0xe3, 0xa5, 0x7c, 0x39, 0x99, 0x97,
0x90, 0x26, 0x96, 0x3f, 0x83, 0x9e, 0x01, 0x4c, 0xa6, 0xe7, 0x23, 0xe6, 0xb9, 0x32, 0x5f, 0x25,
0xa5, 0x53, 0xd5, 0x9c, 0x37, 0x74, 0xe6, 0xfc, 0x23, 0xfd, 0xd2, 0xc0, 0xf4, 0xb7, 0x53, 0xca,
0xc5, 0x30, 0xfc, 0x79, 0xc8, 0x96, 0xdd, 0xc2, 0x66, 0x30, 0x4e, 0xc5, 0x2f, 0x07, 0xe3, 0xbe,
0x4c, 0xc1, 0x52, 0x1f, 0x16, 0xdf, 0x78, 0xa5, 0xdb, 0x6f, 0xbc, 0xe7, 0x50, 0xf7, 0x19, 0x9f,
0x8c, 0xc8, 0x4c, 0x9b, 0x2e, 0x9b, 0xf7, 0x86, 0xe6, 0x29, 0xf3, 0x17, 0x80, 0x22, 0x7a, 0x43,
0xc9, 0x88, 0xfa, 0xa9, 0xb1, 0x75, 0x65, 0xe9, 0xcb, 0x27, 0x13, 0x4d, 0x0b, 0x1b, 0xd5, 0xc5,
0xf9, 0x35, 0x5a, 0xe4, 0xcb, 0x59, 0x30, 0x5f, 0x38, 0x07, 0x74, 0x99, 0x59, 0xb0, 0x9e, 0x46,
0xd6, 0x9f, 0x2d, 0x78, 0x9a, 0x82, 0x56, 0xe0, 0xd1, 0xd1, 0x37, 0x3a, 0xbd, 0xce, 0x57, 0x16,
0xbc, 0x93, 0x9f, 0x3b, 0x4c, 0xf9, 0x24, 0x0c, 0x38, 0x5d, 0xe2, 0xf2, 0x4f, 0xa0, 0x9a, 0x6c,
0x75, 0x47, 0x2f, 0x49, 0x61, 0x18, 0xcf, 0x15, 0xe4, 0xb9, 0x91, 0xcf, 0x1f, 0x75, 0x3d, 0x17,
0x55, 0x33, 0x4c, 0xe8, 0x39, 0xd4, 0x4b, 0x69, 0xa8, 0x2f, 0x86, 0x5b, 0xbe, 0x1d, 0xee, 0x33,
0x00, 0x3d, 0xb9, 0xb8, 0xd3, 0x88, 0x99, 0x67, 0x63, 0x55, 0x73, 0xce, 0x22, 0xe6, 0x60, 0xd8,
0xba, 0x1d, 0xe9, 0x31, 0x25, 0x37, 0xcb, 0x42, 0x5c, 0xdc, 0xb2, 0x70, 0x6b, 0x4b, 0xe7, 0x97,
0xf0, 0x3c, 0xd5, 0x67, 0x74, 0x2b, 0x5f, 0x1c, 0x92, 0x96, 0x58, 0xcf, 0x7a, 0x5b, 0x58, 0xf4,
0xf6, 0x2f, 0x16, 0xd4, 0x3e, 0x23, 0xd7, 0xd3, 0x78, 0xa2, 0x69, 0x42, 0x91, 0xb3, 0x4b, 0xd3,
0x23, 0xe4, 0xa7, 0x9c, 0x71, 0x04, 0x1b, 0x53, 0x2e, 0xc8, 0x78, 0xa2, 0xf4, 0x4b, 0x78, 0xce,
0x90, 0x9b, 0x8a, 0x70, 0xc2, 0x3c, 0x95, 0xde, 0x3a, 0xd6, 0x84, 0x7a, 0xc5, 0x92, 0xd9, 0x28,
0x24, 0x31, 0x5e, 0x62, 0x52, 0xaf, 0xf8, 0x3e, 0x0b, 0x2e, 0x4d, 0x6a, 0x63, 0x52, 0xf6, 0xbd,
0x2b, 0xc2, 0xaf, 0x54, 0x42, 0xeb, 0x58, 0x7d, 0x23, 0x07, 0xea, 0xe2, 0x8a, 0x45, 0xfe, 0x09,
0x89, 0x64, 0x1e, 0xcc, 0xdb, 0x2a, 0xc3, 0x73, 0xfe, 0x00, 0x3b, 0xa9, 0x00, 0xe2, 0xb4, 0xc4,
0xff, 0x68, 0xd8, 0xb0, 0x7a, 0x43, 0x23, 0x1e, 0xf7, 0xbd, 0x06, 0x8e, 0x49, 0xb9, 0xdf, 0x45,
0x14, 0x8e, 0x4d, 0x48, 0xea, 0x5b, 0x3e, 0xa3, 0x44, 0xa8, 0x42, 0x29, 0xe1, 0x82, 0x08, 0xe5,
0xfe, 0xf2, 0x09, 0x4a, 0x03, 0x31, 0x54, 0x41, 0xca, 0xd7, 0x4c, 0x1d, 0x67, 0x78, 0xce, 0x97,
0x16, 0xa0, 0xdb, 0x0e, 0xdc, 0xb1, 0xf1, 0x27, 0x50, 0x49, 0xc6, 0x31, 0x8d, 0xe8, 0xd4, 0x0d,
0xbb, 0x3c, 0x14, 0x9c, 0x68, 0xa1, 0xf7, 0xa4, 0x05, 0x25, 0xc3, 0xcd, 0xd3, 0x6c, 0x23, 0xd7,
0x02, 0x4e, 0xc4, 0x9c, 0xbf, 0x5a, 0xb0, 0x7b, 0xdb, 0x76, 0x37, 0xf0, 0xe9, 0xef, 0xde, 0x22,
0x57, 0x5f, 0xdf, 0xe5, 0x4d, 0x58, 0x09, 0x2f, 0x2e, 0x38, 0x15, 0x26, 0xbb, 0x86, 0x92, 0x55,
0xe0, 0xec, 0xf7, 0xd4, 0xfc, 0x8f, 0xa6, 0xbe, 0x17, 0x31, 0x52, 0x4a, 0x30, 0xe2, 0xfc, 0xdd,
0x82, 0xad, 0x25, 0x51, 0xa0, 0x37, 0x50, 0x31, 0x0f, 0x87, 0x78, 0x70, 0x79, 0x71, 0x97, 0x8f,
0x4a, 0xa9, 0x65, 0x08, 0xd3, 0xaf, 0x13, 0x03, 0x3b, 0x17, 0xd0, 0xc8, 0x2c, 0xe5, 0x74, 0xe7,
0x8f, 0xb3, 0x23, 0xc1, 0xbb, 0xf7, 0x6e, 0x96, 0x64, 0x65, 0xde, 0xc8, 0x5f, 0x35, 0xbe, 0xa8,
0xb5, 0x5e, 0x7c, 0x18, 0x6b, 0x9e, 0xaf, 0xa8, 0xaf, 0xf7, 0xff, 0x13, 0x00, 0x00, 0xff, 0xff,
0xf0, 0x52, 0xf3, 0xa4, 0x00, 0x15, 0x00, 0x00,
}

View File

@ -120,6 +120,7 @@ message CommunityRequestToJoin {
string chat_id = 3;
bytes community_id = 4;
string display_name = 5;
map<string, bytes> revealed_addresses = 6;
}
message CommunityCancelRequestToJoin {

View File

@ -1230,16 +1230,17 @@ func (m *SyncCommunity) GetEncryptionKeys() []byte {
}
type SyncCommunityRequestsToJoin struct {
Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
PublicKey string `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
Clock uint64 `protobuf:"varint,3,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,4,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
CommunityId []byte `protobuf:"bytes,6,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
State uint64 `protobuf:"varint,7,opt,name=state,proto3" json:"state,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
PublicKey string `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
Clock uint64 `protobuf:"varint,3,opt,name=clock,proto3" json:"clock,omitempty"`
EnsName string `protobuf:"bytes,4,opt,name=ens_name,json=ensName,proto3" json:"ens_name,omitempty"`
ChatId string `protobuf:"bytes,5,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
CommunityId []byte `protobuf:"bytes,6,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
State uint64 `protobuf:"varint,7,opt,name=state,proto3" json:"state,omitempty"`
RevealedAddresses map[string][]byte `protobuf:"bytes,8,rep,name=revealed_addresses,json=revealedAddresses,proto3" json:"revealed_addresses,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SyncCommunityRequestsToJoin) Reset() { *m = SyncCommunityRequestsToJoin{} }
@ -1316,6 +1317,13 @@ func (m *SyncCommunityRequestsToJoin) GetState() uint64 {
return 0
}
func (m *SyncCommunityRequestsToJoin) GetRevealedAddresses() map[string][]byte {
if m != nil {
return m.RevealedAddresses
}
return nil
}
type SyncInstallation struct {
Contacts []*SyncInstallationContact `protobuf:"bytes,1,rep,name=contacts,proto3" json:"contacts,omitempty"`
PublicChats []*SyncInstallationPublicChat `protobuf:"bytes,2,rep,name=public_chats,json=publicChats,proto3" json:"public_chats,omitempty"`
@ -2770,6 +2778,7 @@ func init() {
proto.RegisterType((*SyncInstallationPublicChat)(nil), "protobuf.SyncInstallationPublicChat")
proto.RegisterType((*SyncCommunity)(nil), "protobuf.SyncCommunity")
proto.RegisterType((*SyncCommunityRequestsToJoin)(nil), "protobuf.SyncCommunityRequestsToJoin")
proto.RegisterMapType((map[string][]byte)(nil), "protobuf.SyncCommunityRequestsToJoin.RevealedAddressesEntry")
proto.RegisterType((*SyncInstallation)(nil), "protobuf.SyncInstallation")
proto.RegisterType((*SyncChatRemoved)(nil), "protobuf.SyncChatRemoved")
proto.RegisterType((*SyncChatMessagesRead)(nil), "protobuf.SyncChatMessagesRead")
@ -2800,172 +2809,176 @@ func init() {
}
var fileDescriptor_d61ab7221f0b5518 = []byte{
// 2670 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x39, 0xcd, 0x73, 0xdb, 0xc6,
0xf5, 0x01, 0x49, 0xf1, 0xe3, 0x91, 0xa2, 0xe8, 0xb5, 0x63, 0xd3, 0xb2, 0x32, 0xb6, 0x91, 0x64,
0xe2, 0xdf, 0x6f, 0x52, 0xa5, 0x75, 0x9a, 0xa6, 0xcd, 0xc7, 0x24, 0x34, 0xc9, 0xc6, 0xb2, 0x2c,
0x4a, 0xb3, 0x12, 0x9d, 0x26, 0xd3, 0x19, 0xcc, 0x0a, 0x58, 0x8b, 0xa8, 0x40, 0x00, 0xc5, 0x2e,
0xe5, 0xb2, 0xb7, 0xfe, 0x0b, 0xbd, 0xb4, 0xc7, 0x9c, 0xdb, 0x5b, 0x67, 0x72, 0xeb, 0xa1, 0xc7,
0xde, 0x7a, 0xe8, 0xb1, 0x3d, 0xf4, 0xdc, 0xbf, 0xa0, 0xc7, 0xce, 0xdb, 0x5d, 0x80, 0x00, 0x45,
0xaa, 0xf6, 0xf4, 0xd4, 0x13, 0xf7, 0x3d, 0xbc, 0xf7, 0xf0, 0xf6, 0x7d, 0x3f, 0x10, 0x36, 0x63,
0xe6, 0x27, 0x7e, 0x78, 0xb6, 0x1b, 0x27, 0x91, 0x8c, 0x48, 0x5d, 0xfd, 0x9c, 0xce, 0x9e, 0x6f,
0x5f, 0x17, 0xf3, 0xd0, 0x75, 0x04, 0x97, 0xd2, 0x0f, 0xcf, 0x84, 0x7e, 0xbc, 0x6d, 0xb3, 0x38,
0x0e, 0x7c, 0x97, 0x49, 0x3f, 0x0a, 0x9d, 0x29, 0x97, 0xcc, 0x63, 0x92, 0x39, 0x53, 0x2e, 0x04,
0x3b, 0xe3, 0x9a, 0xc6, 0x66, 0x70, 0xe7, 0xc7, 0x5c, 0xba, 0x13, 0x3f, 0x3c, 0x7b, 0xc4, 0xdc,
0x73, 0xee, 0x8d, 0xe3, 0x01, 0x93, 0x6c, 0xc0, 0x25, 0xf3, 0x03, 0x41, 0xee, 0x42, 0x53, 0x31,
0x85, 0xb3, 0xe9, 0x29, 0x4f, 0xba, 0xd6, 0x3d, 0xeb, 0xc1, 0x26, 0x05, 0x44, 0x8d, 0x14, 0x86,
0xdc, 0x87, 0x96, 0x8c, 0x24, 0x0b, 0x52, 0x8a, 0x92, 0xa2, 0x68, 0x2a, 0x9c, 0x26, 0xb1, 0xff,
0xb1, 0x01, 0x55, 0x94, 0x3d, 0x8b, 0xc9, 0x0d, 0xd8, 0x70, 0x83, 0xc8, 0x3d, 0x57, 0x82, 0x2a,
0x54, 0x03, 0xa4, 0x0d, 0x25, 0xdf, 0x53, 0x9c, 0x0d, 0x5a, 0xf2, 0x3d, 0xf2, 0x19, 0xd4, 0xdd,
0x28, 0x94, 0xcc, 0x95, 0xa2, 0x5b, 0xbe, 0x57, 0x7e, 0xd0, 0x7c, 0xf8, 0xe6, 0x6e, 0x7a, 0xd3,
0xdd, 0xe3, 0x79, 0xe8, 0xee, 0x85, 0x42, 0xb2, 0x20, 0x50, 0x17, 0xeb, 0x6b, 0xca, 0x67, 0x0f,
0x69, 0xc6, 0x44, 0x7e, 0x04, 0x4d, 0x37, 0x9a, 0x4e, 0x67, 0xa1, 0x2f, 0x7d, 0x2e, 0xba, 0x15,
0x25, 0xe3, 0x56, 0x51, 0x46, 0xdf, 0x10, 0xcc, 0x69, 0x9e, 0x96, 0x1c, 0xc2, 0x56, 0x2a, 0xc6,
0xd8, 0xa0, 0xbb, 0x71, 0xcf, 0x7a, 0xd0, 0x7c, 0xf8, 0xf6, 0x82, 0xfd, 0x0a, 0x83, 0xd1, 0x65,
0x6e, 0x32, 0x06, 0x92, 0x93, 0x9f, 0xca, 0xac, 0xbe, 0x8a, 0xcc, 0x15, 0x02, 0xc8, 0xfb, 0x50,
0x8b, 0x93, 0xe8, 0xb9, 0x1f, 0xf0, 0x6e, 0x4d, 0xc9, 0xba, 0xbd, 0x90, 0x95, 0xca, 0x38, 0xd2,
0x04, 0x34, 0xa5, 0x24, 0x07, 0xd0, 0x36, 0xc7, 0x54, 0x8f, 0xfa, 0xab, 0xe8, 0xb1, 0xc4, 0x4c,
0xde, 0x83, 0x9a, 0x89, 0xb8, 0x6e, 0x43, 0xc9, 0x79, 0xbd, 0x68, 0xe2, 0x63, 0xfd, 0x90, 0xa6,
0x54, 0x68, 0xdc, 0x34, 0x44, 0x53, 0x05, 0xe0, 0x95, 0x8c, 0xbb, 0xc4, 0x4d, 0x3e, 0x80, 0xfa,
0x39, 0x9f, 0xbb, 0x2c, 0xf1, 0x44, 0xb7, 0xb9, 0x6c, 0x06, 0x54, 0xa1, 0x17, 0x04, 0xfb, 0x86,
0x80, 0x66, 0xa4, 0xa8, 0x47, 0x7a, 0x4e, 0xf5, 0x68, 0xbd, 0x92, 0x1e, 0x4b, 0xdc, 0xf6, 0x1f,
0x2b, 0xd0, 0x3a, 0x98, 0x05, 0xd2, 0xef, 0xb9, 0x6e, 0x34, 0x0b, 0x25, 0x21, 0x50, 0x09, 0xd9,
0x94, 0xab, 0x38, 0x6f, 0x50, 0x75, 0x26, 0x3b, 0xd0, 0x90, 0xfe, 0x94, 0x0b, 0xc9, 0xa6, 0xb1,
0x8a, 0xf6, 0x32, 0x5d, 0x20, 0xf0, 0xa9, 0xef, 0xf1, 0x50, 0xfa, 0x6e, 0x14, 0x76, 0xcb, 0x8a,
0x6d, 0x81, 0x20, 0x9f, 0x03, 0xb8, 0x51, 0x10, 0x25, 0xce, 0x84, 0x89, 0x89, 0x09, 0xe8, 0xfb,
0x0b, 0x65, 0xf3, 0xef, 0xde, 0xed, 0x47, 0x41, 0x34, 0x4b, 0x1e, 0x33, 0x31, 0xa1, 0x0d, 0xc5,
0x84, 0x47, 0xd2, 0x85, 0x9a, 0x02, 0xf6, 0x3c, 0x15, 0xd0, 0x65, 0x9a, 0x82, 0xe4, 0x9d, 0xcc,
0x1a, 0x8e, 0x29, 0x2f, 0x2a, 0x3c, 0x1b, 0xb4, 0x6d, 0xd0, 0x47, 0x1a, 0x4b, 0x6e, 0x41, 0xed,
0x9c, 0xcf, 0x9d, 0x99, 0xef, 0xa9, 0x98, 0x6b, 0xd0, 0xea, 0x39, 0x9f, 0x8f, 0x7d, 0x8f, 0x7c,
0x02, 0x55, 0x7f, 0xca, 0xce, 0x38, 0xc6, 0x13, 0x6a, 0xf6, 0xd6, 0x1a, 0xcd, 0xf6, 0xd4, 0x7d,
0xe4, 0x7c, 0x0f, 0x89, 0xa9, 0xe1, 0xd9, 0xb6, 0x01, 0x16, 0x2a, 0x63, 0x89, 0xf0, 0x43, 0x8f,
0xff, 0xa2, 0x6b, 0xdd, 0x2b, 0x3f, 0x28, 0x53, 0x0d, 0x6c, 0xff, 0xcd, 0x82, 0xcd, 0x02, 0x77,
0x5e, 0x19, 0xab, 0xa0, 0x4c, 0x6a, 0xfa, 0x52, 0xce, 0xf4, 0x5d, 0xa8, 0xc5, 0x6c, 0x1e, 0x44,
0xcc, 0x53, 0xa6, 0x6d, 0xd1, 0x14, 0xc4, 0xd7, 0xbd, 0xf0, 0x3d, 0x89, 0x36, 0x45, 0xa3, 0x68,
0x80, 0xdc, 0x84, 0xea, 0x84, 0xfb, 0x67, 0x13, 0x69, 0x6c, 0x65, 0x20, 0xb2, 0x0d, 0x75, 0x4c,
0x00, 0xe1, 0xff, 0x92, 0x2b, 0x1b, 0x95, 0x69, 0x06, 0x93, 0x37, 0x61, 0x33, 0x51, 0x27, 0x47,
0xb2, 0xe4, 0x8c, 0x4b, 0x65, 0xa3, 0x32, 0x6d, 0x69, 0xe4, 0x89, 0xc2, 0x2d, 0x0a, 0x60, 0x3d,
0x57, 0x00, 0xed, 0xbf, 0x5a, 0x70, 0xfd, 0x69, 0xe4, 0xb2, 0xc0, 0x58, 0xfa, 0xc8, 0x28, 0xf7,
0x01, 0x54, 0xce, 0xf9, 0x5c, 0x28, 0x53, 0x14, 0xfc, 0xbd, 0x82, 0x78, 0x77, 0x9f, 0xcf, 0xa9,
0x22, 0x27, 0x1f, 0x41, 0x6b, 0x8a, 0x66, 0x67, 0xda, 0xec, 0xca, 0x12, 0xcd, 0x87, 0x37, 0x57,
0x3b, 0x85, 0x16, 0x68, 0xf1, 0x86, 0x31, 0x13, 0xe2, 0x45, 0x94, 0x78, 0x26, 0x0a, 0x33, 0x78,
0xfb, 0x3b, 0x50, 0xde, 0xe7, 0xf3, 0x95, 0xb1, 0x4d, 0xa0, 0x82, 0x4d, 0x41, 0xbd, 0xaa, 0x45,
0xd5, 0xd9, 0xfe, 0xc6, 0x82, 0x0e, 0xea, 0x98, 0xaf, 0xd6, 0x6b, 0x3a, 0xc0, 0x3b, 0xb0, 0xe5,
0xe7, 0xa8, 0x9c, 0xac, 0x1d, 0xb4, 0xf3, 0xe8, 0x3d, 0x4f, 0xf5, 0x23, 0x7e, 0xe1, 0xbb, 0xdc,
0x91, 0xf3, 0x98, 0x1b, 0x0d, 0x41, 0xa3, 0x4e, 0xe6, 0x31, 0xcf, 0x94, 0xab, 0x14, 0xbd, 0x7f,
0xc1, 0x13, 0xe1, 0x47, 0xa1, 0x72, 0xe7, 0x26, 0x4d, 0x41, 0xfb, 0x9f, 0x16, 0xdc, 0x5a, 0xd3,
0x50, 0x5e, 0xb2, 0x57, 0xbd, 0x09, 0x9b, 0xa6, 0x2a, 0x3a, 0x2a, 0x9c, 0x8d, 0x4a, 0x2d, 0x83,
0xd4, 0xb1, 0x7a, 0x1b, 0xea, 0x3c, 0x14, 0x4e, 0x4e, 0xb1, 0x1a, 0x0f, 0xc5, 0x08, 0x75, 0xbb,
0x0f, 0xad, 0x80, 0x09, 0xe9, 0xcc, 0x62, 0x8f, 0x49, 0xae, 0x73, 0xb3, 0x42, 0x9b, 0x88, 0x1b,
0x6b, 0x14, 0xde, 0x59, 0xcc, 0x85, 0xe4, 0x53, 0x47, 0xb2, 0x33, 0x6c, 0x1d, 0x65, 0xbc, 0xb3,
0x46, 0x9d, 0xb0, 0x33, 0x41, 0xde, 0x86, 0x76, 0x80, 0x01, 0xe1, 0x84, 0xbe, 0x7b, 0xae, 0x5e,
0xa2, 0xd3, 0x73, 0x53, 0x61, 0x47, 0x06, 0x69, 0xff, 0xaa, 0x0a, 0xb7, 0xd7, 0x76, 0x4f, 0xf2,
0x5d, 0xb8, 0x91, 0x57, 0xc4, 0x51, 0xbc, 0xc1, 0xdc, 0xdc, 0x9e, 0xe4, 0x14, 0x7a, 0xaa, 0x9f,
0xfc, 0x0f, 0x9b, 0x02, 0x7d, 0xcb, 0x3c, 0x8f, 0x7b, 0xaa, 0x6f, 0xd5, 0xa9, 0x06, 0x30, 0x4e,
0x4e, 0xd1, 0xc9, 0xdc, 0x53, 0x6d, 0xa9, 0x4e, 0x53, 0x10, 0xe9, 0xa7, 0x33, 0xd4, 0xa9, 0xa9,
0xe9, 0x15, 0x80, 0xf4, 0x09, 0x9f, 0x46, 0x17, 0xdc, 0x53, 0xed, 0xa3, 0x4e, 0x53, 0x90, 0xdc,
0x83, 0xd6, 0x84, 0x09, 0x47, 0x89, 0x75, 0x66, 0xa2, 0xbb, 0xa9, 0x1e, 0xc3, 0x84, 0x89, 0x1e,
0xa2, 0xc6, 0xd8, 0x3b, 0xaf, 0x5f, 0xf0, 0xc4, 0x7f, 0x9e, 0x8e, 0x67, 0x42, 0x32, 0x39, 0x13,
0xdd, 0xb6, 0xaa, 0x19, 0x24, 0xff, 0xe8, 0x58, 0x3d, 0x51, 0x83, 0x56, 0x32, 0x13, 0x32, 0xa5,
0xdc, 0x52, 0x94, 0x4d, 0x85, 0x33, 0x24, 0x9f, 0xc2, 0x1d, 0x33, 0x7d, 0x38, 0x09, 0xff, 0xf9,
0x8c, 0x0b, 0xa9, 0xbd, 0xa8, 0x58, 0x78, 0xb7, 0xa3, 0x38, 0xba, 0x86, 0x84, 0x6a, 0x0a, 0xe5,
0x4c, 0xe4, 0xe7, 0xeb, 0xd9, 0x75, 0x1a, 0x5c, 0x5b, 0xcb, 0xde, 0x57, 0x99, 0xf1, 0x19, 0xec,
0x2c, 0xb3, 0xa3, 0x39, 0x24, 0x37, 0xaf, 0x27, 0x8a, 0xff, 0x76, 0x91, 0x9f, 0x2a, 0x0a, 0xfd,
0xfe, 0xf5, 0x02, 0xb4, 0x02, 0xd7, 0xd7, 0x0b, 0xd0, 0x1a, 0xdc, 0x87, 0x96, 0xe7, 0x8b, 0x38,
0x60, 0x73, 0x1d, 0x5f, 0x37, 0x94, 0xeb, 0x9b, 0x06, 0x87, 0x31, 0x66, 0xbf, 0xb8, 0x9c, 0xef,
0x69, 0xcb, 0x5e, 0x9d, 0xef, 0x97, 0x82, 0xba, 0xb4, 0x22, 0xa8, 0x97, 0x23, 0xb7, 0x7c, 0x29,
0x72, 0xed, 0x47, 0xb0, 0xbd, 0xfc, 0xe2, 0xa3, 0xd9, 0x69, 0xe0, 0xbb, 0xfd, 0x09, 0x7b, 0xc9,
0x5a, 0x63, 0x7f, 0x5b, 0x86, 0xcd, 0xc2, 0xe8, 0xfa, 0x1f, 0xf9, 0x5a, 0x2a, 0x31, 0xef, 0x42,
0x33, 0x4e, 0xfc, 0x0b, 0x26, 0xb9, 0x73, 0xce, 0xe7, 0xa6, 0x03, 0x82, 0x41, 0x61, 0x45, 0xbf,
0x87, 0x55, 0x55, 0xb8, 0x89, 0x1f, 0xa3, 0x5e, 0x2a, 0x2f, 0x5b, 0x34, 0x8f, 0xc2, 0x86, 0xf8,
0xb3, 0xc8, 0x0f, 0x4d, 0x56, 0xd6, 0xa9, 0x81, 0xb0, 0x5d, 0xe8, 0x58, 0xe5, 0x9e, 0x6a, 0x88,
0x75, 0x9a, 0xc1, 0x8b, 0xa4, 0xa9, 0xe5, 0x93, 0xe6, 0x10, 0x3a, 0xc6, 0xbb, 0xc2, 0x91, 0x91,
0x83, 0x72, 0xcc, 0xd4, 0xf0, 0xf6, 0xba, 0x01, 0xdd, 0x90, 0x9f, 0x44, 0x4f, 0x22, 0x3f, 0xa4,
0xed, 0xa4, 0x00, 0x93, 0x8f, 0xa1, 0x9e, 0x8e, 0x85, 0x66, 0x0c, 0xbd, 0xbb, 0x46, 0x90, 0x99,
0x47, 0x05, 0xcd, 0x18, 0x70, 0xea, 0xe2, 0xa1, 0x9b, 0xcc, 0x63, 0x99, 0x25, 0xfd, 0x02, 0x81,
0x4f, 0x45, 0xcc, 0x5d, 0xc9, 0x16, 0xa9, 0xbf, 0x40, 0x60, 0xd3, 0x32, 0xa4, 0x98, 0xc0, 0xaa,
0x51, 0xb7, 0x94, 0xe5, 0xda, 0x0b, 0xf4, 0x3e, 0x9f, 0x0b, 0xfb, 0x2f, 0x16, 0xdc, 0xb9, 0xe2,
0x46, 0xc6, 0x5f, 0x56, 0xe6, 0xaf, 0x37, 0x00, 0x62, 0x15, 0x1b, 0xca, 0x5d, 0xda, 0xff, 0x0d,
0x8d, 0x41, 0x6f, 0x65, 0x4e, 0x2f, 0xe7, 0x9d, 0x7e, 0x45, 0x61, 0xbd, 0x05, 0x35, 0x77, 0xc2,
0x24, 0x76, 0xd5, 0x0d, 0x3d, 0x2a, 0x21, 0xb8, 0xe7, 0x61, 0xdc, 0xa6, 0xab, 0xc5, 0x1c, 0x9f,
0x56, 0xb5, 0xe3, 0x33, 0xdc, 0x9e, 0x72, 0xa2, 0x4e, 0xdf, 0x9a, 0x7e, 0x99, 0x02, 0xec, 0x5f,
0x97, 0xa0, 0xb3, 0x1c, 0xce, 0xe4, 0xd3, 0xdc, 0xda, 0x76, 0x69, 0x62, 0x59, 0xd3, 0x78, 0x72,
0x4b, 0xdb, 0x17, 0xd0, 0x32, 0xb7, 0x46, 0xed, 0x44, 0xb7, 0xb4, 0x3c, 0x4a, 0xae, 0xcf, 0x1f,
0xda, 0x8c, 0xb3, 0xb3, 0x20, 0x1f, 0x43, 0x2d, 0x9d, 0x7c, 0xca, 0x2a, 0x1e, 0xae, 0x50, 0x23,
0x1d, 0x82, 0x52, 0x8e, 0xff, 0x62, 0x75, 0xb4, 0x3f, 0x84, 0x2d, 0xf5, 0x14, 0x15, 0x32, 0x7d,
0xe0, 0xe5, 0xf2, 0xfa, 0x13, 0xb8, 0x91, 0x32, 0x1e, 0xe8, 0xe5, 0x5c, 0x50, 0xce, 0x5e, 0x96,
0xfb, 0x73, 0xb8, 0xa9, 0x36, 0x1d, 0x57, 0xfa, 0x17, 0xbe, 0x9c, 0xf7, 0x79, 0x28, 0x79, 0x72,
0x05, 0x7f, 0x07, 0xca, 0xbe, 0xa7, 0xcd, 0xdb, 0xa2, 0x78, 0xb4, 0x07, 0xba, 0x36, 0x15, 0x25,
0xf4, 0x5c, 0x97, 0xab, 0x24, 0x78, 0x59, 0x29, 0x43, 0x1d, 0xe4, 0x45, 0x29, 0x03, 0x5f, 0x4c,
0x7d, 0x21, 0x5e, 0x41, 0xcc, 0x37, 0x16, 0xb4, 0x50, 0xce, 0xa3, 0x28, 0x3a, 0x9f, 0xb2, 0xe4,
0x7c, 0x3d, 0xe3, 0x2c, 0x09, 0x8c, 0x19, 0xf0, 0x98, 0x4d, 0x7e, 0xe5, 0xdc, 0xe4, 0x77, 0x07,
0x1a, 0xaa, 0x6a, 0x3b, 0x48, 0xab, 0xb3, 0xa2, 0xae, 0x10, 0xe3, 0x24, 0xc8, 0xb7, 0xef, 0x8d,
0x62, 0xfb, 0x7e, 0x03, 0xc0, 0xe3, 0x01, 0xc7, 0x31, 0x88, 0x49, 0x95, 0x15, 0x15, 0xda, 0x30,
0x98, 0x9e, 0xb4, 0x9f, 0xe8, 0xe0, 0xef, 0x07, 0x9c, 0x25, 0x8f, 0x7d, 0x21, 0xa3, 0x64, 0x9e,
0xcf, 0x31, 0xab, 0x90, 0x63, 0x6f, 0x00, 0xb8, 0x48, 0xa8, 0x65, 0x95, 0xb4, 0x2c, 0x83, 0xe9,
0x49, 0xfb, 0xcf, 0x16, 0x10, 0x14, 0x66, 0x76, 0xf5, 0x23, 0xdf, 0x95, 0xb3, 0x84, 0xaf, 0x9c,
0xb1, 0x73, 0x4b, 0x4c, 0x69, 0xcd, 0x12, 0x53, 0x56, 0xe3, 0xed, 0xa5, 0x25, 0xa6, 0xa2, 0xd0,
0xe9, 0x12, 0x73, 0x07, 0x1a, 0xaa, 0x9f, 0xa9, 0x2d, 0x46, 0x0f, 0xc4, 0x6a, 0x8b, 0x39, 0x5e,
0xb9, 0xc5, 0x54, 0x15, 0xc1, 0x9a, 0x2d, 0xa6, 0x96, 0xdf, 0x62, 0x26, 0x70, 0xfd, 0xf2, 0x4d,
0xc4, 0xfa, 0x45, 0xed, 0x87, 0x50, 0x8f, 0x0d, 0x91, 0x49, 0xf6, 0x9d, 0x62, 0x9e, 0x15, 0x25,
0xd1, 0x8c, 0xda, 0xfe, 0x7d, 0x09, 0xae, 0x21, 0xc1, 0x97, 0x2c, 0x08, 0xb8, 0xbc, 0xba, 0x81,
0x77, 0xa1, 0xc6, 0x3c, 0x2f, 0xe1, 0x42, 0xa4, 0x56, 0x33, 0x20, 0xda, 0xe7, 0x85, 0x12, 0xa0,
0xcc, 0x56, 0xa7, 0x06, 0x42, 0xdb, 0xa3, 0xef, 0x94, 0xd5, 0xea, 0x54, 0x9d, 0x11, 0xa7, 0x16,
0x0e, 0x5d, 0x3f, 0xd5, 0x19, 0x25, 0xa3, 0xef, 0x71, 0x28, 0xd0, 0xfb, 0x72, 0x0a, 0x22, 0x75,
0xcc, 0xe4, 0xc4, 0xcc, 0x9e, 0xea, 0x8c, 0xbd, 0x24, 0x2b, 0xe1, 0x6a, 0xfb, 0x6b, 0xe5, 0x6b,
0x7a, 0xea, 0xef, 0x46, 0xce, 0xdf, 0x78, 0x1f, 0x5c, 0xd1, 0x55, 0x5f, 0x6a, 0x50, 0x0d, 0x28,
0xaf, 0xfa, 0x9e, 0xc7, 0x43, 0xd3, 0x90, 0x0c, 0xb4, 0x7e, 0x18, 0xb5, 0x0f, 0x74, 0x84, 0x15,
0x8c, 0x25, 0xc8, 0x87, 0x50, 0x37, 0x35, 0x2f, 0xad, 0xd6, 0x77, 0x8a, 0xd6, 0x2f, 0xd0, 0xd3,
0x8c, 0xd8, 0xfe, 0x97, 0xa5, 0xc3, 0xff, 0x98, 0x5d, 0x70, 0xaf, 0x67, 0x6c, 0x99, 0xb3, 0xb2,
0x55, 0xb4, 0xf2, 0xaa, 0x75, 0x7c, 0x07, 0x1a, 0xcf, 0xd9, 0x45, 0x34, 0x4b, 0x7c, 0xc9, 0x8d,
0xf1, 0x17, 0x88, 0x2b, 0xf2, 0xf2, 0x3e, 0xb4, 0xf4, 0x88, 0xe5, 0xe4, 0xc3, 0xaf, 0xa9, 0x71,
0x7a, 0x06, 0xfc, 0x7f, 0xb8, 0xe6, 0x4e, 0x98, 0x1f, 0x3a, 0x62, 0x12, 0x25, 0x52, 0xb5, 0x43,
0xfd, 0x95, 0xab, 0x41, 0xb7, 0xd4, 0x83, 0x63, 0xc4, 0x63, 0x5b, 0x14, 0x58, 0x43, 0x78, 0x28,
0x8c, 0xcd, 0xf1, 0x88, 0xb1, 0xea, 0x0b, 0x47, 0x72, 0x21, 0xcd, 0x30, 0x50, 0xf5, 0xc5, 0x09,
0x17, 0xf2, 0x49, 0xa5, 0x5e, 0xe9, 0x6c, 0xd8, 0xbf, 0xb1, 0xe0, 0xf5, 0x95, 0x13, 0xc5, 0x9a,
0xd8, 0x5b, 0xee, 0xaf, 0xda, 0x06, 0x85, 0xfe, 0x3a, 0x84, 0xbb, 0x13, 0x5d, 0x42, 0x1c, 0x96,
0xb8, 0x13, 0xff, 0x82, 0x3b, 0x62, 0x16, 0xc7, 0xa8, 0x3b, 0x0f, 0xd9, 0x69, 0x60, 0xa6, 0xc9,
0x3a, 0xdd, 0x31, 0x64, 0x3d, 0x4d, 0x75, 0xac, 0x89, 0x86, 0x9a, 0xc6, 0xfe, 0x83, 0xa5, 0x9b,
0xcf, 0x09, 0xae, 0x03, 0xb8, 0x60, 0xf0, 0xe4, 0x25, 0x17, 0xd8, 0x4f, 0xa1, 0x6a, 0x36, 0x0a,
0x7c, 0x4f, 0x7b, 0x79, 0x0a, 0xcb, 0x09, 0xdc, 0x3d, 0x59, 0xec, 0x1a, 0xd4, 0x30, 0xd9, 0x1f,
0x41, 0x33, 0x87, 0x26, 0x4d, 0xa8, 0x8d, 0x47, 0xfb, 0xa3, 0xc3, 0x2f, 0x47, 0x9d, 0xd7, 0x10,
0x38, 0xa1, 0xe3, 0xe3, 0x93, 0xe1, 0xa0, 0x63, 0x91, 0x6b, 0xb0, 0x39, 0x1e, 0x29, 0xf0, 0xcb,
0x43, 0x7a, 0xf2, 0xf8, 0xab, 0x4e, 0xc9, 0xfe, 0xa6, 0xac, 0xa7, 0xf1, 0x67, 0xb9, 0x6d, 0xc7,
0x8c, 0x46, 0x6b, 0x94, 0x27, 0x50, 0x79, 0x9e, 0x44, 0xd3, 0x34, 0x98, 0xf0, 0x8c, 0x17, 0x92,
0x91, 0xa9, 0xfa, 0x25, 0x19, 0x61, 0x70, 0xb9, 0x13, 0x8c, 0xdd, 0xf0, 0x2c, 0x9d, 0x84, 0x16,
0x08, 0x74, 0x89, 0x99, 0x1f, 0x75, 0x41, 0x36, 0x4b, 0x66, 0x86, 0xeb, 0xa9, 0x4f, 0x20, 0x09,
0x17, 0x71, 0x14, 0x8a, 0x34, 0xb1, 0x33, 0x18, 0xab, 0x79, 0xc2, 0xe3, 0xc0, 0xd7, 0xcc, 0x3a,
0xfe, 0x1a, 0x06, 0xd3, 0x93, 0x84, 0xaf, 0xde, 0xea, 0xea, 0xca, 0xb2, 0xdf, 0x2f, 0x5a, 0x76,
0xc5, 0xad, 0x77, 0x9f, 0x5d, 0xda, 0xfb, 0x56, 0xee, 0x82, 0xda, 0x87, 0x8d, 0x6c, 0x04, 0xf8,
0x09, 0x90, 0xcb, 0x9c, 0x97, 0x7c, 0x71, 0x34, 0x1c, 0x0d, 0xf6, 0x46, 0x5f, 0x74, 0x2c, 0xd2,
0x82, 0x7a, 0xaf, 0xdf, 0x1f, 0x1e, 0xa1, 0x67, 0x4a, 0x08, 0x0d, 0x86, 0xfd, 0xa7, 0x7b, 0xa3,
0xe1, 0xa0, 0x53, 0x46, 0xa8, 0xdf, 0x1b, 0xf5, 0x87, 0x4f, 0x87, 0x83, 0x4e, 0xc5, 0xfe, 0xbb,
0xa5, 0x67, 0x83, 0x7e, 0x61, 0xe9, 0x1a, 0x70, 0xd7, 0x17, 0xeb, 0xbf, 0xe6, 0xec, 0x40, 0xc3,
0xd8, 0x73, 0x2f, 0x8d, 0xb4, 0x05, 0x82, 0xfc, 0x14, 0xb6, 0x3c, 0xc3, 0xef, 0x14, 0x22, 0xef,
0xfd, 0xe5, 0x29, 0x6b, 0xd5, 0x2b, 0x77, 0xd3, 0x83, 0x31, 0x4f, 0xdb, 0x2b, 0xc0, 0xf6, 0xbb,
0xd0, 0x2e, 0x52, 0x14, 0x2e, 0xfb, 0x5a, 0xe1, 0xb2, 0x96, 0xfd, 0xad, 0x05, 0x5b, 0x4b, 0x5f,
0xcb, 0xd7, 0xf7, 0xab, 0xe5, 0xf5, 0xb2, 0x74, 0x69, 0xbd, 0x24, 0xef, 0x02, 0xc9, 0x93, 0x38,
0xf9, 0x39, 0xbd, 0x93, 0x23, 0xd4, 0xb5, 0x2a, 0xdf, 0x00, 0x2b, 0xaf, 0xd4, 0x00, 0x05, 0x00,
0x65, 0x2f, 0xcc, 0xb0, 0x98, 0x1f, 0x0c, 0xac, 0xe2, 0x60, 0xb0, 0x0f, 0x4d, 0xf3, 0x77, 0xcf,
0x09, 0x76, 0xaf, 0x92, 0xb2, 0xf3, 0xff, 0x2d, 0x5e, 0xd2, 0x5b, 0xfc, 0x41, 0x74, 0x60, 0xfe,
0x1f, 0x32, 0x42, 0x77, 0x91, 0x81, 0xe6, 0xb9, 0xed, 0xdf, 0x59, 0xd0, 0x46, 0xad, 0x72, 0x6f,
0xfe, 0x01, 0x34, 0x93, 0x0c, 0x4a, 0xfb, 0xc8, 0x8d, 0x85, 0xfc, 0x05, 0x29, 0xcd, 0x13, 0x92,
0x87, 0x70, 0x43, 0xcc, 0x4e, 0xd3, 0x5e, 0xf4, 0x44, 0x44, 0xe1, 0xa3, 0xb9, 0xe4, 0x69, 0x87,
0x5e, 0xf9, 0x8c, 0xbc, 0x0b, 0xd7, 0xd2, 0xb5, 0x6d, 0xc1, 0xa0, 0x77, 0xd9, 0xcb, 0x0f, 0xec,
0xdf, 0x5a, 0xd0, 0x44, 0x65, 0xcd, 0xd7, 0x7f, 0x35, 0x2f, 0x66, 0x1e, 0xc5, 0xe3, 0xca, 0xc6,
0x74, 0x13, 0xaa, 0xe6, 0x03, 0x90, 0x19, 0x09, 0xcc, 0xf7, 0x9f, 0x5c, 0x4c, 0x54, 0x0a, 0x31,
0xb1, 0x03, 0x0d, 0xd3, 0xe8, 0xb8, 0xe8, 0x6e, 0xa8, 0x29, 0x76, 0x81, 0x58, 0xa4, 0x47, 0x35,
0x3f, 0x27, 0xfd, 0xc9, 0x4c, 0x2f, 0x46, 0x35, 0x1c, 0x98, 0xa3, 0x90, 0x7c, 0x04, 0x55, 0xa6,
0x4e, 0x4a, 0xc7, 0xf6, 0x43, 0xbb, 0x18, 0x0a, 0x05, 0xe2, 0x5d, 0xfd, 0x43, 0x0d, 0x07, 0x79,
0x0b, 0x36, 0xa3, 0xc0, 0x33, 0x24, 0xe3, 0xac, 0xbc, 0x17, 0x91, 0xe4, 0x3d, 0x75, 0x09, 0x84,
0xcc, 0x5e, 0xf4, 0xfa, 0xca, 0x57, 0xd0, 0x94, 0x0a, 0xdb, 0x5d, 0xd5, 0x68, 0x77, 0x0d, 0x36,
0xf7, 0x87, 0x5f, 0xf5, 0x7b, 0x74, 0xe0, 0xf4, 0x06, 0x03, 0x95, 0x49, 0x04, 0xda, 0xbd, 0x7e,
0xff, 0x70, 0x3c, 0x3a, 0x39, 0x36, 0x38, 0x8b, 0x5c, 0x87, 0xad, 0x94, 0x6c, 0x30, 0x7c, 0x3a,
0xd4, 0xf5, 0xe5, 0x06, 0x74, 0x32, 0x42, 0x3a, 0x3c, 0x38, 0x7c, 0xa6, 0xea, 0x0c, 0x40, 0xf5,
0xe9, 0x61, 0x7f, 0x1f, 0xab, 0x0c, 0x26, 0xe5, 0x78, 0x64, 0xa0, 0x0d, 0xb2, 0x05, 0xcd, 0xf1,
0xde, 0xc0, 0x19, 0x1f, 0x0d, 0x7a, 0x28, 0xa0, 0x4a, 0x3a, 0xd0, 0x1a, 0xf5, 0x0e, 0x86, 0x4e,
0xff, 0x71, 0x6f, 0xf4, 0xc5, 0x70, 0xd0, 0xa9, 0xd9, 0x5f, 0xeb, 0x6e, 0x97, 0xfb, 0x77, 0x87,
0x7c, 0x2f, 0xf7, 0x57, 0x90, 0x8e, 0xc3, 0x35, 0xd7, 0x5b, 0xfc, 0x0d, 0x94, 0xb9, 0xa7, 0x94,
0x73, 0xcf, 0xa3, 0xcd, 0xaf, 0x9b, 0xbb, 0xef, 0x7d, 0x9c, 0xb2, 0x9e, 0x56, 0xd5, 0xe9, 0xfd,
0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0xc1, 0x13, 0x2d, 0x88, 0x7b, 0x1d, 0x00, 0x00,
// 2726 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x19, 0x4d, 0x73, 0x23, 0x47,
0x35, 0x23, 0xc9, 0xfa, 0x78, 0x92, 0x65, 0xb9, 0xd7, 0xd9, 0xd5, 0x7a, 0x9d, 0xda, 0xdd, 0x49,
0x52, 0x59, 0xa8, 0xe0, 0xc0, 0x86, 0x90, 0xb0, 0x49, 0x2a, 0xd1, 0x4a, 0x22, 0xeb, 0xf5, 0x5a,
0x76, 0xb5, 0xad, 0x0d, 0x49, 0x51, 0x35, 0xd5, 0x9e, 0xe9, 0xb5, 0x06, 0x8f, 0x66, 0xc4, 0x74,
0xcb, 0x8b, 0xb8, 0xc1, 0x4f, 0xe0, 0x02, 0xc7, 0x9c, 0xe1, 0x46, 0x55, 0x6e, 0x1c, 0x38, 0x72,
0xe7, 0x08, 0x07, 0xce, 0xfc, 0x02, 0x8e, 0xd4, 0xeb, 0xee, 0x19, 0xcd, 0xc8, 0x92, 0xf1, 0x16,
0x27, 0x4e, 0xea, 0xf7, 0xe6, 0xbd, 0x37, 0xaf, 0xdf, 0xf7, 0x1b, 0xc1, 0xfa, 0x84, 0xf9, 0xb1,
0x1f, 0x9e, 0xed, 0x4e, 0xe2, 0x48, 0x46, 0xa4, 0xaa, 0x7e, 0x4e, 0xa7, 0x2f, 0xb6, 0x6f, 0x88,
0x59, 0xe8, 0x3a, 0x82, 0x4b, 0xe9, 0x87, 0x67, 0x42, 0x3f, 0xde, 0xb6, 0xd9, 0x64, 0x12, 0xf8,
0x2e, 0x93, 0x7e, 0x14, 0x3a, 0x63, 0x2e, 0x99, 0xc7, 0x24, 0x73, 0xc6, 0x5c, 0x08, 0x76, 0xc6,
0x35, 0x8d, 0xcd, 0xe0, 0xce, 0x4f, 0xb8, 0x74, 0x47, 0x7e, 0x78, 0xf6, 0x98, 0xb9, 0xe7, 0xdc,
0x1b, 0x4e, 0x7a, 0x4c, 0xb2, 0x1e, 0x97, 0xcc, 0x0f, 0x04, 0xb9, 0x0b, 0x75, 0xc5, 0x14, 0x4e,
0xc7, 0xa7, 0x3c, 0x6e, 0x5b, 0xf7, 0xac, 0x07, 0xeb, 0x14, 0x10, 0x35, 0x50, 0x18, 0x72, 0x1f,
0x1a, 0x32, 0x92, 0x2c, 0x48, 0x28, 0x0a, 0x8a, 0xa2, 0xae, 0x70, 0x9a, 0xc4, 0xfe, 0xe7, 0x1a,
0x94, 0x51, 0xf6, 0x74, 0x42, 0xb6, 0x60, 0xcd, 0x0d, 0x22, 0xf7, 0x5c, 0x09, 0x2a, 0x51, 0x0d,
0x90, 0x26, 0x14, 0x7c, 0x4f, 0x71, 0xd6, 0x68, 0xc1, 0xf7, 0xc8, 0x67, 0x50, 0x75, 0xa3, 0x50,
0x32, 0x57, 0x8a, 0x76, 0xf1, 0x5e, 0xf1, 0x41, 0xfd, 0xe1, 0x9b, 0xbb, 0xc9, 0x4d, 0x77, 0x8f,
0x67, 0xa1, 0xbb, 0x17, 0x0a, 0xc9, 0x82, 0x40, 0x5d, 0xac, 0xab, 0x29, 0x9f, 0x3f, 0xa4, 0x29,
0x13, 0xf9, 0x31, 0xd4, 0xdd, 0x68, 0x3c, 0x9e, 0x86, 0xbe, 0xf4, 0xb9, 0x68, 0x97, 0x94, 0x8c,
0x5b, 0x79, 0x19, 0x5d, 0x43, 0x30, 0xa3, 0x59, 0x5a, 0x72, 0x08, 0x1b, 0x89, 0x18, 0x63, 0x83,
0xf6, 0xda, 0x3d, 0xeb, 0x41, 0xfd, 0xe1, 0xdb, 0x73, 0xf6, 0x2b, 0x0c, 0x46, 0x17, 0xb9, 0xc9,
0x10, 0x48, 0x46, 0x7e, 0x22, 0xb3, 0xfc, 0x2a, 0x32, 0x97, 0x08, 0x20, 0xef, 0x43, 0x65, 0x12,
0x47, 0x2f, 0xfc, 0x80, 0xb7, 0x2b, 0x4a, 0xd6, 0xed, 0xb9, 0xac, 0x44, 0xc6, 0x91, 0x26, 0xa0,
0x09, 0x25, 0x39, 0x80, 0xa6, 0x39, 0x26, 0x7a, 0x54, 0x5f, 0x45, 0x8f, 0x05, 0x66, 0xf2, 0x1e,
0x54, 0x4c, 0xc4, 0xb5, 0x6b, 0x4a, 0xce, 0xeb, 0x79, 0x13, 0x1f, 0xeb, 0x87, 0x34, 0xa1, 0x42,
0xe3, 0x26, 0x21, 0x9a, 0x28, 0x00, 0xaf, 0x64, 0xdc, 0x05, 0x6e, 0xf2, 0x01, 0x54, 0xcf, 0xf9,
0xcc, 0x65, 0xb1, 0x27, 0xda, 0xf5, 0x45, 0x33, 0xa0, 0x0a, 0x9d, 0x20, 0xd8, 0x37, 0x04, 0x34,
0x25, 0x45, 0x3d, 0x92, 0x73, 0xa2, 0x47, 0xe3, 0x95, 0xf4, 0x58, 0xe0, 0xb6, 0xff, 0x5c, 0x82,
0xc6, 0xc1, 0x34, 0x90, 0x7e, 0xc7, 0x75, 0xa3, 0x69, 0x28, 0x09, 0x81, 0x52, 0xc8, 0xc6, 0x5c,
0xc5, 0x79, 0x8d, 0xaa, 0x33, 0xd9, 0x81, 0x9a, 0xf4, 0xc7, 0x5c, 0x48, 0x36, 0x9e, 0xa8, 0x68,
0x2f, 0xd2, 0x39, 0x02, 0x9f, 0xfa, 0x1e, 0x0f, 0xa5, 0xef, 0x46, 0x61, 0xbb, 0xa8, 0xd8, 0xe6,
0x08, 0xf2, 0x39, 0x80, 0x1b, 0x05, 0x51, 0xec, 0x8c, 0x98, 0x18, 0x99, 0x80, 0xbe, 0x3f, 0x57,
0x36, 0xfb, 0xee, 0xdd, 0x6e, 0x14, 0x44, 0xd3, 0xf8, 0x09, 0x13, 0x23, 0x5a, 0x53, 0x4c, 0x78,
0x24, 0x6d, 0xa8, 0x28, 0x60, 0xcf, 0x53, 0x01, 0x5d, 0xa4, 0x09, 0x48, 0xde, 0x49, 0xad, 0xe1,
0x98, 0xf2, 0xa2, 0xc2, 0xb3, 0x46, 0x9b, 0x06, 0x7d, 0xa4, 0xb1, 0xe4, 0x16, 0x54, 0xce, 0xf9,
0xcc, 0x99, 0xfa, 0x9e, 0x8a, 0xb9, 0x1a, 0x2d, 0x9f, 0xf3, 0xd9, 0xd0, 0xf7, 0xc8, 0x27, 0x50,
0xf6, 0xc7, 0xec, 0x8c, 0x63, 0x3c, 0xa1, 0x66, 0x6f, 0xad, 0xd0, 0x6c, 0x4f, 0xdd, 0x47, 0xce,
0xf6, 0x90, 0x98, 0x1a, 0x9e, 0x6d, 0x1b, 0x60, 0xae, 0x32, 0x96, 0x08, 0x3f, 0xf4, 0xf8, 0x2f,
0xdb, 0xd6, 0xbd, 0xe2, 0x83, 0x22, 0xd5, 0xc0, 0xf6, 0xdf, 0x2d, 0x58, 0xcf, 0x71, 0x67, 0x95,
0xb1, 0x72, 0xca, 0x24, 0xa6, 0x2f, 0x64, 0x4c, 0xdf, 0x86, 0xca, 0x84, 0xcd, 0x82, 0x88, 0x79,
0xca, 0xb4, 0x0d, 0x9a, 0x80, 0xf8, 0xba, 0x97, 0xbe, 0x27, 0xd1, 0xa6, 0x68, 0x14, 0x0d, 0x90,
0x9b, 0x50, 0x1e, 0x71, 0xff, 0x6c, 0x24, 0x8d, 0xad, 0x0c, 0x44, 0xb6, 0xa1, 0x8a, 0x09, 0x20,
0xfc, 0x5f, 0x71, 0x65, 0xa3, 0x22, 0x4d, 0x61, 0xf2, 0x26, 0xac, 0xc7, 0xea, 0xe4, 0x48, 0x16,
0x9f, 0x71, 0xa9, 0x6c, 0x54, 0xa4, 0x0d, 0x8d, 0x3c, 0x51, 0xb8, 0x79, 0x01, 0xac, 0x66, 0x0a,
0xa0, 0xfd, 0x37, 0x0b, 0x6e, 0x3c, 0x8b, 0x5c, 0x16, 0x18, 0x4b, 0x1f, 0x19, 0xe5, 0x3e, 0x80,
0xd2, 0x39, 0x9f, 0x09, 0x65, 0x8a, 0x9c, 0xbf, 0x97, 0x10, 0xef, 0xee, 0xf3, 0x19, 0x55, 0xe4,
0xe4, 0x11, 0x34, 0xc6, 0x68, 0x76, 0xa6, 0xcd, 0xae, 0x2c, 0x51, 0x7f, 0x78, 0x73, 0xb9, 0x53,
0x68, 0x8e, 0x16, 0x6f, 0x38, 0x61, 0x42, 0xbc, 0x8c, 0x62, 0xcf, 0x44, 0x61, 0x0a, 0x6f, 0x7f,
0x0f, 0x8a, 0xfb, 0x7c, 0xb6, 0x34, 0xb6, 0x09, 0x94, 0xb0, 0x29, 0xa8, 0x57, 0x35, 0xa8, 0x3a,
0xdb, 0xdf, 0x58, 0xd0, 0x42, 0x1d, 0xb3, 0xd5, 0x7a, 0x45, 0x07, 0x78, 0x07, 0x36, 0xfc, 0x0c,
0x95, 0x93, 0xb6, 0x83, 0x66, 0x16, 0xbd, 0xe7, 0xa9, 0x7e, 0xc4, 0x2f, 0x7c, 0x97, 0x3b, 0x72,
0x36, 0xe1, 0x46, 0x43, 0xd0, 0xa8, 0x93, 0xd9, 0x84, 0xa7, 0xca, 0x95, 0xf2, 0xde, 0xbf, 0xe0,
0xb1, 0xf0, 0xa3, 0x50, 0xb9, 0x73, 0x9d, 0x26, 0xa0, 0xfd, 0x2f, 0x0b, 0x6e, 0xad, 0x68, 0x28,
0xd7, 0xec, 0x55, 0x6f, 0xc2, 0xba, 0xa9, 0x8a, 0x8e, 0x0a, 0x67, 0xa3, 0x52, 0xc3, 0x20, 0x75,
0xac, 0xde, 0x86, 0x2a, 0x0f, 0x85, 0x93, 0x51, 0xac, 0xc2, 0x43, 0x31, 0x40, 0xdd, 0xee, 0x43,
0x23, 0x60, 0x42, 0x3a, 0xd3, 0x89, 0xc7, 0x24, 0xd7, 0xb9, 0x59, 0xa2, 0x75, 0xc4, 0x0d, 0x35,
0x0a, 0xef, 0x2c, 0x66, 0x42, 0xf2, 0xb1, 0x23, 0xd9, 0x19, 0xb6, 0x8e, 0x22, 0xde, 0x59, 0xa3,
0x4e, 0xd8, 0x99, 0x20, 0x6f, 0x43, 0x33, 0xc0, 0x80, 0x70, 0x42, 0xdf, 0x3d, 0x57, 0x2f, 0xd1,
0xe9, 0xb9, 0xae, 0xb0, 0x03, 0x83, 0xb4, 0x7f, 0x5d, 0x86, 0xdb, 0x2b, 0xbb, 0x27, 0xf9, 0x3e,
0x6c, 0x65, 0x15, 0x71, 0x14, 0x6f, 0x30, 0x33, 0xb7, 0x27, 0x19, 0x85, 0x9e, 0xe9, 0x27, 0xff,
0xc7, 0xa6, 0x40, 0xdf, 0x32, 0xcf, 0xe3, 0x9e, 0xea, 0x5b, 0x55, 0xaa, 0x01, 0x8c, 0x93, 0x53,
0x74, 0x32, 0xf7, 0x54, 0x5b, 0xaa, 0xd2, 0x04, 0x44, 0xfa, 0xf1, 0x14, 0x75, 0xaa, 0x6b, 0x7a,
0x05, 0x20, 0x7d, 0xcc, 0xc7, 0xd1, 0x05, 0xf7, 0x54, 0xfb, 0xa8, 0xd2, 0x04, 0x24, 0xf7, 0xa0,
0x31, 0x62, 0xc2, 0x51, 0x62, 0x9d, 0xa9, 0x68, 0xaf, 0xab, 0xc7, 0x30, 0x62, 0xa2, 0x83, 0xa8,
0x21, 0xf6, 0xce, 0x1b, 0x17, 0x3c, 0xf6, 0x5f, 0x24, 0xe3, 0x99, 0x90, 0x4c, 0x4e, 0x45, 0xbb,
0xa9, 0x6a, 0x06, 0xc9, 0x3e, 0x3a, 0x56, 0x4f, 0xd4, 0xa0, 0x15, 0x4f, 0x85, 0x4c, 0x28, 0x37,
0x14, 0x65, 0x5d, 0xe1, 0x0c, 0xc9, 0xa7, 0x70, 0xc7, 0x4c, 0x1f, 0x4e, 0xcc, 0x7f, 0x31, 0xe5,
0x42, 0x6a, 0x2f, 0x2a, 0x16, 0xde, 0x6e, 0x29, 0x8e, 0xb6, 0x21, 0xa1, 0x9a, 0x42, 0x39, 0x13,
0xf9, 0xf9, 0x6a, 0x76, 0x9d, 0x06, 0x9b, 0x2b, 0xd9, 0xbb, 0x2a, 0x33, 0x3e, 0x83, 0x9d, 0x45,
0x76, 0x34, 0x87, 0xe4, 0xe6, 0xf5, 0x44, 0xf1, 0xdf, 0xce, 0xf3, 0x53, 0x45, 0xa1, 0xdf, 0xbf,
0x5a, 0x80, 0x56, 0xe0, 0xc6, 0x6a, 0x01, 0x5a, 0x83, 0xfb, 0xd0, 0xf0, 0x7c, 0x31, 0x09, 0xd8,
0x4c, 0xc7, 0xd7, 0x96, 0x72, 0x7d, 0xdd, 0xe0, 0x30, 0xc6, 0xec, 0x97, 0x97, 0xf3, 0x3d, 0x69,
0xd9, 0xcb, 0xf3, 0xfd, 0x52, 0x50, 0x17, 0x96, 0x04, 0xf5, 0x62, 0xe4, 0x16, 0x2f, 0x45, 0xae,
0xfd, 0x18, 0xb6, 0x17, 0x5f, 0x7c, 0x34, 0x3d, 0x0d, 0x7c, 0xb7, 0x3b, 0x62, 0xd7, 0xac, 0x35,
0xf6, 0xb7, 0x45, 0x58, 0xcf, 0x8d, 0xae, 0xff, 0x95, 0xaf, 0xa1, 0x12, 0xf3, 0x2e, 0xd4, 0x27,
0xb1, 0x7f, 0xc1, 0x24, 0x77, 0xce, 0xf9, 0xcc, 0x74, 0x40, 0x30, 0x28, 0xac, 0xe8, 0xf7, 0xb0,
0xaa, 0x0a, 0x37, 0xf6, 0x27, 0xa8, 0x97, 0xca, 0xcb, 0x06, 0xcd, 0xa2, 0xb0, 0x21, 0xfe, 0x3c,
0xf2, 0x43, 0x93, 0x95, 0x55, 0x6a, 0x20, 0x6c, 0x17, 0x3a, 0x56, 0xb9, 0xa7, 0x1a, 0x62, 0x95,
0xa6, 0xf0, 0x3c, 0x69, 0x2a, 0xd9, 0xa4, 0x39, 0x84, 0x96, 0xf1, 0xae, 0x70, 0x64, 0xe4, 0xa0,
0x1c, 0x33, 0x35, 0xbc, 0xbd, 0x6a, 0x40, 0x37, 0xe4, 0x27, 0xd1, 0xd3, 0xc8, 0x0f, 0x69, 0x33,
0xce, 0xc1, 0xe4, 0x63, 0xa8, 0x26, 0x63, 0xa1, 0x19, 0x43, 0xef, 0xae, 0x10, 0x64, 0xe6, 0x51,
0x41, 0x53, 0x06, 0x9c, 0xba, 0x78, 0xe8, 0xc6, 0xb3, 0x89, 0x4c, 0x93, 0x7e, 0x8e, 0xc0, 0xa7,
0x62, 0xc2, 0x5d, 0xc9, 0xe6, 0xa9, 0x3f, 0x47, 0x60, 0xd3, 0x32, 0xa4, 0x98, 0xc0, 0xaa, 0x51,
0x37, 0x94, 0xe5, 0x9a, 0x73, 0xf4, 0x3e, 0x9f, 0x09, 0xfb, 0x37, 0x45, 0xb8, 0x73, 0xc5, 0x8d,
0x8c, 0xbf, 0xac, 0xd4, 0x5f, 0x6f, 0x00, 0x4c, 0x54, 0x6c, 0x28, 0x77, 0x69, 0xff, 0xd7, 0x34,
0x06, 0xbd, 0x95, 0x3a, 0xbd, 0x98, 0x75, 0xfa, 0x15, 0x85, 0xf5, 0x16, 0x54, 0xdc, 0x11, 0x93,
0xd8, 0x55, 0xd7, 0xf4, 0xa8, 0x84, 0xe0, 0x9e, 0x87, 0x71, 0x9b, 0xac, 0x16, 0x33, 0x7c, 0x5a,
0xd6, 0x8e, 0x4f, 0x71, 0x7b, 0xca, 0x89, 0x3a, 0x7d, 0x2b, 0xfa, 0x65, 0x0a, 0x20, 0xe7, 0x40,
0x62, 0x7e, 0xc1, 0x59, 0xc0, 0x3d, 0x2c, 0x72, 0x31, 0x17, 0x22, 0x1d, 0xfe, 0x3e, 0xb9, 0x96,
0x1b, 0x77, 0xa9, 0xe1, 0xef, 0x24, 0xec, 0xfd, 0x50, 0xc6, 0x33, 0xba, 0x19, 0x2f, 0xe2, 0xb7,
0x7b, 0x70, 0x73, 0x39, 0x31, 0x69, 0x41, 0x11, 0x2d, 0xa4, 0x07, 0x11, 0x3c, 0xa2, 0xba, 0x17,
0x2c, 0x98, 0x72, 0x13, 0xfd, 0x1a, 0x78, 0x54, 0xf8, 0xc8, 0xb2, 0x7f, 0x5b, 0x80, 0xd6, 0x62,
0x06, 0x92, 0x4f, 0x33, 0x9b, 0xe6, 0xa5, 0x21, 0x6b, 0x45, 0xaf, 0xcc, 0xec, 0x99, 0x5f, 0x40,
0xc3, 0x38, 0x0a, 0x0d, 0x2a, 0xda, 0x85, 0xc5, 0xe9, 0x77, 0x75, 0xca, 0xd3, 0xfa, 0x24, 0x3d,
0x0b, 0xf2, 0x31, 0x54, 0x92, 0x61, 0xad, 0xa8, 0x42, 0xf8, 0x0a, 0x35, 0x92, 0xb9, 0x2d, 0xe1,
0xf8, 0x1f, 0xb6, 0x5d, 0xfb, 0x43, 0xd8, 0x50, 0x4f, 0x51, 0x21, 0xd3, 0xba, 0xae, 0x57, 0x8a,
0x3e, 0x81, 0xad, 0x84, 0xf1, 0x40, 0x7f, 0x4f, 0x10, 0x94, 0xb3, 0xeb, 0x72, 0x7f, 0x0e, 0x37,
0xd5, 0x72, 0xe6, 0x4a, 0xff, 0xc2, 0x97, 0xb3, 0x2e, 0x0f, 0x25, 0x8f, 0xaf, 0xe0, 0x6f, 0x41,
0xd1, 0xf7, 0xb4, 0x79, 0x1b, 0x14, 0x8f, 0x76, 0x4f, 0x97, 0xd3, 0xbc, 0x84, 0x8e, 0xeb, 0x72,
0x95, 0xb7, 0xd7, 0x95, 0xd2, 0xd7, 0x79, 0x99, 0x97, 0xd2, 0xf3, 0xc5, 0xd8, 0x17, 0xe2, 0x15,
0xc4, 0x7c, 0x63, 0x41, 0x03, 0xe5, 0x3c, 0x8e, 0xa2, 0xf3, 0x31, 0x8b, 0xcf, 0x57, 0x33, 0x4e,
0xe3, 0xc0, 0x98, 0x01, 0x8f, 0xe9, 0xb0, 0x5a, 0xcc, 0x0c, 0xab, 0x77, 0xa0, 0xa6, 0x1a, 0x8d,
0x83, 0xb4, 0x3a, 0x91, 0xab, 0x0a, 0x31, 0x8c, 0x83, 0xec, 0xc4, 0xb1, 0x96, 0x9f, 0x38, 0xde,
0x00, 0xf0, 0x78, 0xc0, 0x71, 0x72, 0x63, 0x52, 0x25, 0x72, 0x89, 0xd6, 0x0c, 0xa6, 0x23, 0xed,
0xa7, 0x3a, 0xf8, 0xbb, 0x01, 0x67, 0xf1, 0x13, 0x5f, 0xc8, 0x28, 0x9e, 0x65, 0xcb, 0x82, 0x95,
0x2b, 0x0b, 0x6f, 0x00, 0xb8, 0x48, 0xa8, 0x65, 0x15, 0xb4, 0x2c, 0x83, 0xe9, 0x48, 0xfb, 0xaf,
0x16, 0x10, 0x14, 0x66, 0x3e, 0x2f, 0x1c, 0xf9, 0xae, 0x9c, 0xc6, 0x7c, 0xe9, 0x5a, 0x90, 0xd9,
0xbb, 0x0a, 0x2b, 0xf6, 0xae, 0xa2, 0x9a, 0xc8, 0x2f, 0xed, 0x5d, 0x25, 0x85, 0x4e, 0xf6, 0xae,
0x3b, 0x50, 0x53, 0x2d, 0x58, 0x2d, 0x5e, 0x7a, 0x86, 0x57, 0x8b, 0xd7, 0xf1, 0xd2, 0xc5, 0xab,
0xac, 0x08, 0x56, 0x2c, 0x5e, 0x95, 0xec, 0xe2, 0x35, 0x82, 0x1b, 0x97, 0x6f, 0x22, 0x56, 0xef,
0x96, 0x1f, 0x41, 0x75, 0x62, 0x88, 0x4c, 0xb2, 0xef, 0xe4, 0xf3, 0x2c, 0x2f, 0x89, 0xa6, 0xd4,
0xf6, 0x1f, 0x0b, 0xb0, 0x89, 0x04, 0x5f, 0xb2, 0x20, 0xe0, 0xf2, 0xea, 0x99, 0xa3, 0x0d, 0x15,
0x53, 0x54, 0x13, 0xab, 0x19, 0x10, 0xed, 0xf3, 0x52, 0x09, 0x50, 0x66, 0xab, 0x52, 0x03, 0xa1,
0xed, 0xd1, 0x77, 0xca, 0x6a, 0x55, 0xaa, 0xce, 0x88, 0x53, 0x3b, 0x92, 0x2e, 0xf9, 0xea, 0x8c,
0x92, 0xd1, 0xf7, 0x38, 0xc7, 0xe8, 0x15, 0x3f, 0x01, 0x91, 0x7a, 0xc2, 0xe4, 0xc8, 0x8c, 0xcb,
0xea, 0x8c, 0xed, 0x2f, 0xed, 0x3a, 0x6a, 0x61, 0x6d, 0x64, 0xdb, 0x50, 0xe2, 0xef, 0x5a, 0xc6,
0xdf, 0x78, 0x9f, 0x28, 0x88, 0x62, 0xd5, 0x4a, 0x6b, 0x54, 0x03, 0xca, 0xab, 0xbe, 0xe7, 0xf1,
0xd0, 0xf4, 0x50, 0x03, 0xad, 0x9e, 0x9f, 0xed, 0x03, 0x1d, 0x61, 0x39, 0x63, 0x09, 0xf2, 0x21,
0x54, 0x4d, 0xcd, 0x4b, 0xaa, 0xf5, 0x9d, 0xbc, 0xf5, 0x73, 0xf4, 0x34, 0x25, 0xb6, 0xff, 0x6d,
0xe9, 0xf0, 0x3f, 0x66, 0x17, 0x69, 0x0f, 0xc9, 0x5a, 0xd9, 0xca, 0x5b, 0x79, 0xd9, 0x17, 0x84,
0x1d, 0xa8, 0xbd, 0x60, 0x17, 0xd1, 0x34, 0xf6, 0x25, 0x37, 0xc6, 0x9f, 0x23, 0xae, 0xc8, 0xcb,
0xfb, 0xd0, 0xd0, 0x53, 0xa1, 0x93, 0x0d, 0xbf, 0xba, 0xc6, 0xe9, 0xb1, 0xf5, 0xbb, 0xb0, 0xe9,
0x8e, 0x98, 0x1f, 0x3a, 0x62, 0x14, 0xc5, 0x52, 0x75, 0x70, 0xfd, 0x61, 0xae, 0x46, 0x37, 0xd4,
0x83, 0x63, 0xc4, 0x63, 0x27, 0x17, 0x58, 0x43, 0x78, 0x28, 0x8c, 0xcd, 0xf1, 0x88, 0xb1, 0xea,
0x0b, 0x47, 0x72, 0x21, 0xcd, 0xfc, 0x52, 0xf6, 0xc5, 0x09, 0x17, 0xf2, 0x69, 0xa9, 0x5a, 0x6a,
0xad, 0xd9, 0xbf, 0xb3, 0xe0, 0xf5, 0xa5, 0x43, 0xd0, 0x8a, 0xd8, 0x5b, 0x1c, 0x09, 0xb4, 0x0d,
0x72, 0x23, 0x41, 0x1f, 0xee, 0x8e, 0x74, 0x09, 0x71, 0x58, 0xec, 0x8e, 0xfc, 0x0b, 0xee, 0x88,
0xe9, 0x64, 0x82, 0xba, 0xf3, 0x90, 0x9d, 0x06, 0x66, 0x00, 0xae, 0xd2, 0x1d, 0x43, 0xd6, 0xd1,
0x54, 0xc7, 0x9a, 0xa8, 0xaf, 0x69, 0xec, 0x3f, 0x59, 0xba, 0xf9, 0x9c, 0xe0, 0x06, 0x83, 0x3b,
0x11, 0x8f, 0xaf, 0xb9, 0x73, 0x7f, 0x0a, 0x65, 0xb3, 0x04, 0xe1, 0x7b, 0x9a, 0x8b, 0x83, 0x63,
0x46, 0xe0, 0xee, 0xc9, 0x7c, 0x3d, 0xa2, 0x86, 0xc9, 0x7e, 0x04, 0xf5, 0x0c, 0x9a, 0xd4, 0xa1,
0x32, 0x1c, 0xec, 0x0f, 0x0e, 0xbf, 0x1c, 0xb4, 0x5e, 0x43, 0xe0, 0x84, 0x0e, 0x8f, 0x4f, 0xfa,
0xbd, 0x96, 0x45, 0x36, 0x61, 0x7d, 0x38, 0x50, 0xe0, 0x97, 0x87, 0xf4, 0xe4, 0xc9, 0x57, 0xad,
0x82, 0xfd, 0x4d, 0x51, 0x2f, 0x10, 0xcf, 0x33, 0x0b, 0x9a, 0x19, 0x6c, 0x56, 0x28, 0x4f, 0xa0,
0xf4, 0x22, 0x8e, 0xc6, 0x49, 0x30, 0xe1, 0x19, 0x2f, 0x24, 0x23, 0x53, 0xf5, 0x0b, 0x32, 0xc2,
0xe0, 0x72, 0x47, 0x18, 0xbb, 0xe1, 0x59, 0x32, 0xbc, 0xcd, 0x11, 0xe8, 0x12, 0x33, 0xf2, 0xea,
0x82, 0x6c, 0xf6, 0xe2, 0x14, 0xd7, 0x51, 0x5f, 0x6d, 0x62, 0x2e, 0x26, 0x51, 0x28, 0x92, 0xc4,
0x4e, 0x61, 0xac, 0xe6, 0x31, 0x9f, 0x04, 0xbe, 0x66, 0xd6, 0xf1, 0x57, 0x33, 0x98, 0x8e, 0x24,
0x7c, 0xf9, 0x22, 0x5a, 0x55, 0x96, 0xfd, 0x61, 0xde, 0xb2, 0x4b, 0x6e, 0xbd, 0xfb, 0xfc, 0xd2,
0xaa, 0xba, 0x74, 0x7d, 0xd5, 0x3e, 0xac, 0xa5, 0x23, 0xc0, 0x4f, 0x81, 0x5c, 0xe6, 0xbc, 0xe4,
0x8b, 0xa3, 0xfe, 0xa0, 0xb7, 0x37, 0xf8, 0xa2, 0x65, 0x91, 0x06, 0x54, 0x3b, 0xdd, 0x6e, 0xff,
0x08, 0x3d, 0x53, 0x40, 0xa8, 0xd7, 0xef, 0x3e, 0xdb, 0x1b, 0xf4, 0x7b, 0xad, 0x22, 0x42, 0xdd,
0xce, 0xa0, 0xdb, 0x7f, 0xd6, 0xef, 0xb5, 0x4a, 0xf6, 0x3f, 0x2c, 0x3d, 0x1b, 0x74, 0x73, 0x7b,
0x62, 0x8f, 0xbb, 0xbe, 0x58, 0xfd, 0x01, 0x6a, 0x07, 0x6a, 0xc6, 0x9e, 0x7b, 0x49, 0xa4, 0xcd,
0x11, 0xe4, 0x67, 0xb0, 0xe1, 0x19, 0x7e, 0x27, 0x17, 0x79, 0xef, 0x2f, 0x4e, 0x59, 0xcb, 0x5e,
0xb9, 0x9b, 0x1c, 0x8c, 0x79, 0x9a, 0x5e, 0x0e, 0xb6, 0xdf, 0x85, 0x66, 0x9e, 0x22, 0x77, 0xd9,
0xd7, 0x72, 0x97, 0xb5, 0xec, 0x6f, 0x2d, 0xd8, 0x58, 0xf8, 0xc0, 0xbf, 0xba, 0x5f, 0x2d, 0x6e,
0xc4, 0x85, 0x4b, 0x1b, 0x31, 0x79, 0x17, 0x48, 0x96, 0xc4, 0xc9, 0xae, 0x16, 0xad, 0x0c, 0xa1,
0xae, 0x55, 0xd9, 0x06, 0x58, 0x7a, 0xa5, 0x06, 0x28, 0x00, 0x28, 0x7b, 0x69, 0x86, 0xc5, 0xec,
0x60, 0x60, 0xe5, 0x07, 0x83, 0x7d, 0xa8, 0x9b, 0x7f, 0xa8, 0x4e, 0xb0, 0x7b, 0x15, 0x94, 0x9d,
0xbf, 0x33, 0x7f, 0x49, 0x67, 0xfe, 0x9f, 0xd6, 0x81, 0xf9, 0x4b, 0xcb, 0x08, 0xdd, 0x45, 0x06,
0x9a, 0xe5, 0xb6, 0xff, 0x60, 0x41, 0x13, 0xb5, 0xca, 0xbc, 0xf9, 0x47, 0x50, 0x8f, 0x53, 0x28,
0xe9, 0x23, 0x5b, 0x73, 0xf9, 0x73, 0x52, 0x9a, 0x25, 0x24, 0x0f, 0x61, 0x4b, 0x4c, 0x4f, 0x93,
0x5e, 0xf4, 0x54, 0x44, 0xe1, 0xe3, 0x99, 0xe4, 0x49, 0x87, 0x5e, 0xfa, 0x8c, 0xbc, 0x0b, 0x9b,
0xc9, 0xa6, 0x39, 0x67, 0xd0, 0xeb, 0xf7, 0xe5, 0x07, 0xf6, 0xef, 0x2d, 0xa8, 0xa3, 0xb2, 0xe6,
0x0f, 0x0b, 0x35, 0x2f, 0xa6, 0x1e, 0xc5, 0xe3, 0xd2, 0xc6, 0x74, 0x13, 0xca, 0xe6, 0x9b, 0x95,
0x19, 0x09, 0xcc, 0x27, 0xab, 0x4c, 0x4c, 0x94, 0x72, 0x31, 0xb1, 0x03, 0xb5, 0xf9, 0xca, 0xb6,
0xa6, 0xa6, 0xd8, 0x39, 0x62, 0x9e, 0x1e, 0xe5, 0xec, 0x9c, 0xf4, 0x17, 0x33, 0xbd, 0x18, 0xd5,
0x70, 0x60, 0x8e, 0x42, 0xf2, 0x08, 0xca, 0x4c, 0x9d, 0x94, 0x8e, 0xcd, 0x87, 0x76, 0x3e, 0x14,
0x72, 0xc4, 0xbb, 0xfa, 0x87, 0x1a, 0x0e, 0xf2, 0x16, 0xac, 0x47, 0x81, 0x67, 0x48, 0x86, 0x69,
0x79, 0xcf, 0x23, 0xc9, 0x7b, 0xea, 0x12, 0x08, 0x99, 0xbd, 0xe8, 0xf5, 0xa5, 0xaf, 0xa0, 0x09,
0x15, 0xb6, 0xbb, 0xb2, 0xd1, 0x6e, 0x13, 0xd6, 0xf7, 0xfb, 0x5f, 0x75, 0x3b, 0xb4, 0xe7, 0x74,
0x7a, 0x3d, 0x95, 0x49, 0x04, 0x9a, 0x9d, 0x6e, 0xf7, 0x70, 0x38, 0x38, 0x39, 0x36, 0x38, 0x8b,
0xdc, 0x80, 0x8d, 0x84, 0xac, 0xd7, 0x7f, 0xd6, 0xd7, 0xf5, 0x65, 0x0b, 0x5a, 0x29, 0x21, 0xed,
0x1f, 0x1c, 0x3e, 0x57, 0x75, 0x06, 0xa0, 0xfc, 0xec, 0xb0, 0xbb, 0x8f, 0x55, 0x06, 0x93, 0x72,
0x38, 0x30, 0xd0, 0x1a, 0xd9, 0x80, 0xfa, 0x70, 0xaf, 0xe7, 0x0c, 0x8f, 0x7a, 0x1d, 0x14, 0x50,
0x26, 0x2d, 0x68, 0x0c, 0x3a, 0x07, 0x7d, 0xa7, 0xfb, 0xa4, 0x33, 0xf8, 0xa2, 0xdf, 0x6b, 0x55,
0xec, 0xaf, 0x75, 0xb7, 0xcb, 0xfc, 0x21, 0x45, 0x7e, 0x90, 0xf9, 0xf7, 0x4a, 0xc7, 0xe1, 0x8a,
0xeb, 0xcd, 0xff, 0xb9, 0x4a, 0xdd, 0x53, 0xc8, 0xb8, 0xe7, 0xf1, 0xfa, 0xd7, 0xf5, 0xdd, 0xf7,
0x3e, 0x4e, 0x58, 0x4f, 0xcb, 0xea, 0xf4, 0xfe, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xa1, 0x89,
0xac, 0x57, 0x2e, 0x1e, 0x00, 0x00,
}

View File

@ -142,6 +142,7 @@ message SyncCommunityRequestsToJoin {
string chat_id = 5;
bytes community_id = 6;
uint64 state = 7;
map<string, bytes> revealed_addresses = 8;
}
message SyncInstallation {

View File

@ -11,6 +11,7 @@ var ErrRequestToJoinCommunityInvalidCommunityID = errors.New("request-to-join-co
type RequestToJoinCommunity struct {
CommunityID types.HexBytes `json:"communityId"`
ENSName string `json:"ensName"`
Password string `json:"password"`
}
func (j *RequestToJoinCommunity) Validate() error {