syntax = "proto3";
package testpb;

import "gogoproto/gogo.proto";
import "google/protobuf/any.proto";

option go_package = "github.com/cosmos/cosmos-sdk/testutil/testdata";

message Dog {
  string size = 1;
  string name = 2;
}

message Cat {
  string moniker = 1;
  int32  lives   = 2;
}

message Bird {
  string species = 1;
  int32  color   = 2;
}

message HasAnimal {
  google.protobuf.Any animal = 1;
  int64               x      = 2;
}

message HasHasAnimal {
  google.protobuf.Any has_animal = 1;
}

message HasHasHasAnimal {
  google.protobuf.Any has_has_animal = 1;
}

// bad MultiSignature with extra fields
message BadMultiSignature {
  option (gogoproto.goproto_unrecognized) = true;
  repeated bytes signatures               = 1;
  bytes          malicious_field          = 5;
}

message TableModel {
  uint64 id       = 1;
  string name     = 2;
  uint64 number   = 3;
  bytes  metadata = 4;
}
